Преглед изворни кода

HUE-1852 [oozie] Encoding issue in job description included in workflows

Tested witrh French and Korean
Romain Rigaux пре 12 година
родитељ
комит
4c230b0ec9
3 измењених фајлова са 5 додато и 5 уклоњено
  1. 2 2
      apps/oozie/src/oozie/tests.py
  2. 1 1
      apps/oozie/src/oozie/utils.py
  3. 2 2
      apps/oozie/src/oozie/views/api.py

+ 2 - 2
apps/oozie/src/oozie/tests.py

@@ -390,7 +390,7 @@ class TestAPI(OozieMockBase):
 
     # Change property and save
     workflow_dict = workflow_to_dict(self.wf)
-    workflow_dict['description'] = 'test'
+    workflow_dict['description'] = 'Le workflow est testé. 한국어/조선말'
     workflow_json = json.dumps(workflow_dict)
 
     response = self.c.post(reverse('oozie:workflow_save', kwargs={'workflow': self.wf.pk}), data={'workflow': workflow_json})
@@ -399,7 +399,7 @@ class TestAPI(OozieMockBase):
     assert_equal(0, test_response_json_object['status'])
 
     wf = Workflow.objects.get(id=self.wf.id)
-    assert_equal('test', wf.description)
+    assert_equal(u'Le workflow est testé. 한국어/조선말', wf.description)
     assert_equal(self.wf.name, wf.name)
 
     # Change node and save

+ 1 - 1
apps/oozie/src/oozie/utils.py

@@ -57,7 +57,7 @@ def format_dict_field_values(dictionary):
 
 def model_to_dict(model):
   from django.db import models
-  from oozie.models import Node
+
   dictionary = {}
   for field in model._meta.fields:
     try:

+ 2 - 2
apps/oozie/src/oozie/views/api.py

@@ -267,7 +267,7 @@ def _workflow(request, workflow):
 def workflow_validate_node(request, workflow, node_type):
   response = {'status': -1, 'data': {}}
 
-  node_dict = format_dict_field_values(json.loads(str(request.POST.get('node'))))
+  node_dict = format_dict_field_values(json.loads(request.POST.get('node')))
 
   if _validate_node_json(node_type, node_dict, response['data'], request.user, workflow):
     response['status'] = 0
@@ -284,7 +284,7 @@ def workflow_save(request, workflow):
   if request.method != 'POST':
     raise StructuredException(code="METHOD_NOT_ALLOWED_ERROR", message=_('Must be POST request.'), error_code=405)
 
-  json_workflow = format_dict_field_values(json.loads(str(request.POST.get('workflow'))))
+  json_workflow = format_dict_field_values(json.loads(request.POST.get('workflow')))
   json_workflow.setdefault('schema_version', workflow.schema_version)
 
   form = WorkflowForm(data=json_workflow)