summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormaheshgudi2017-10-17 12:14:40 +0530
committermahesh2017-10-20 11:51:47 +0530
commit9e31fd95ac56165c4ed4923e92fd7b673295cf79 (patch)
treecaebb241761b87636e02ee1ed312329c28776f98
parent90e8295819f606bcf794a5bcd521b4ef08cb98e0 (diff)
downloadonline_test-9e31fd95ac56165c4ed4923e92fd7b673295cf79.tar.gz
online_test-9e31fd95ac56165c4ed4923e92fd7b673295cf79.tar.bz2
online_test-9e31fd95ac56165c4ed4923e92fd7b673295cf79.zip
Yaml fields are sorted according to relevance
-rw-r--r--yaksh/models.py16
1 files changed, 14 insertions, 2 deletions
diff --git a/yaksh/models.py b/yaksh/models.py
index 3fcfa39..87f153c 100644
--- a/yaksh/models.py
+++ b/yaksh/models.py
@@ -506,8 +506,20 @@ class Question(models.Model):
tmp_file_path = tempfile.mkdtemp()
yaml_path = os.path.join(tmp_file_path, "questions_dump.yaml")
for elem in q_dict:
- sorted_dict = CommentedMap(sorted(elem.items(), key=lambda x:x[0]))
- yaml_block = dict_to_yaml(sorted_dict)
+ relevant_dict = CommentedMap()
+ irrelevant_dict = CommentedMap()
+ relevant_dict['summary'] = elem.pop('summary')
+ relevant_dict['type'] = elem.pop('type')
+ relevant_dict['language'] = elem.pop('language')
+ relevant_dict['description'] = elem.pop('description')
+ relevant_dict['points'] = elem.pop('points')
+ relevant_dict['testcase'] = elem.pop('testcase')
+ relevant_dict.update(CommentedMap(sorted(elem.items(),
+ key=lambda x:x[0]
+ ))
+ )
+
+ yaml_block = dict_to_yaml(relevant_dict)
with open(yaml_path, "a") as yaml_file:
yaml_file.write(yaml_block)
zip_file.write(yaml_path, os.path.basename(yaml_path))