浏览代码

HUE-954 [oozie] Support boolean fields

- Test case to ensure correct data bind attribute
abec 13 年之前
父节点
当前提交
b02cf1b

+ 5 - 1
apps/oozie/src/oozie/templates/editor/action_utils.mako

@@ -62,7 +62,11 @@
 
           % for field in action_form:
             % if field.html_name not in ('name', 'description', 'node_type', 'job_xml'):
-              ${ utils.render_field_with_error_js(field, field.name, extra_attrs={'data-bind': 'value: %s' % field.name}) }
+              % if field.html_name in ('capture_output', 'is_single'):
+                ${ utils.render_field_with_error_js(field, field.name, extra_attrs={'data-bind': 'checked: %s' % field.name}) }
+              % else:
+                ${ utils.render_field_with_error_js(field, field.name, extra_attrs={'data-bind': 'value: %s' % field.name}) }
+              % endif
             % endif
           % endfor
 

+ 1 - 1
apps/oozie/src/oozie/templates/editor/edit_workflow.mako

@@ -161,7 +161,7 @@ ${ layout.menubar(section='workflows') }
               <fieldset>
                 ${ utils.render_field(workflow_form['name'], extra_attrs={'data-bind': 'value: %s' % workflow_form['name'].name}) }
                 ${ utils.render_field(workflow_form['description'], extra_attrs={'data-bind': 'value: %s' % workflow_form['description'].name}) }
-                ${ utils.render_field(workflow_form['is_shared'], extra_attrs={'data-bind': 'value: %s' % workflow_form['is_shared'].name}) }
+                ${ utils.render_field(workflow_form['is_shared'], extra_attrs={'data-bind': 'checked: %s' % workflow_form['is_shared'].name}) }
 
                 <div class="control-group ">
                   <label class="control-label">

+ 6 - 0
apps/oozie/src/oozie/tests.py

@@ -857,6 +857,12 @@ class TestEditor(OozieMockBase):
                  coord.find_all_parameters())
 
 
+  def test_workflow_data_binds(self):
+    response = self.c.get(reverse('oozie:edit_workflow', args=[self.wf.id]))
+    assert_equal(1, response.content.count('checked: is_shared'), response.content)
+    assert_true('checked: capture_output' in response.content, response.content)
+
+
   def test_import_workflow_basic(self):
     workflow = Workflow.objects.new_workflow(self.user)
     workflow.save()