diff --git a/common/lib/xmodule/xmodule/open_ended_grading_classes/combined_open_ended_modulev1.py b/common/lib/xmodule/xmodule/open_ended_grading_classes/combined_open_ended_modulev1.py index bf6c51ac15..0e3bd86581 100644 --- a/common/lib/xmodule/xmodule/open_ended_grading_classes/combined_open_ended_modulev1.py +++ b/common/lib/xmodule/xmodule/open_ended_grading_classes/combined_open_ended_modulev1.py @@ -44,6 +44,10 @@ HUMAN_TASK_TYPE = { 'openended' : "edX Assessment", } +#Default value that controls whether or not to skip basic spelling checks in the controller +#Metadata overrides this +SKIP_BASIC_CHECKS = False + class CombinedOpenEndedV1Module(): """ This is a module that encapsulates all open ended grading (self assessment, peer assessment, etc). @@ -142,6 +146,7 @@ class CombinedOpenEndedV1Module(): self.max_attempts = int(self.metadata.get('attempts', MAX_ATTEMPTS)) self.is_scored = self.metadata.get('is_graded', IS_SCORED) in TRUE_DICT self.accept_file_upload = self.metadata.get('accept_file_upload', ACCEPT_FILE_UPLOAD) in TRUE_DICT + self.skip_basic_checks = self.metadata.get('skip_spelling_checks', SKIP_BASIC_CHECKS) display_due_date_string = self.metadata.get('due', None) grace_period_string = self.metadata.get('graceperiod', None) @@ -170,6 +175,7 @@ class CombinedOpenEndedV1Module(): 'accept_file_upload': self.accept_file_upload, 'close_date' : self.timeinfo.close_date, 's3_interface' : self.system.s3_interface, + 'skip_basic_checks' : self.skip_basic_checks, } self.task_xml = definition['task_xml'] diff --git a/common/lib/xmodule/xmodule/open_ended_grading_classes/open_ended_module.py b/common/lib/xmodule/xmodule/open_ended_grading_classes/open_ended_module.py index 54db1b6557..95c631c8fd 100644 --- a/common/lib/xmodule/xmodule/open_ended_grading_classes/open_ended_module.py +++ b/common/lib/xmodule/xmodule/open_ended_grading_classes/open_ended_module.py @@ -110,7 +110,8 @@ class OpenEndedModule(openendedchild.OpenEndedChild): 'rubric': rubric_string, 'initial_display': self.initial_display, 'answer': self.answer, - 'problem_id': self.display_name + 'problem_id': self.display_name, + 'skip_basic_checks': self.skip_basic_checks, }) updated_grader_payload = json.dumps(parsed_grader_payload) diff --git a/common/lib/xmodule/xmodule/open_ended_grading_classes/openendedchild.py b/common/lib/xmodule/xmodule/open_ended_grading_classes/openendedchild.py index ba8a74cc31..1700dcaa07 100644 --- a/common/lib/xmodule/xmodule/open_ended_grading_classes/openendedchild.py +++ b/common/lib/xmodule/xmodule/open_ended_grading_classes/openendedchild.py @@ -99,6 +99,7 @@ class OpenEndedChild(object): self.accept_file_upload = static_data['accept_file_upload'] self.close_date = static_data['close_date'] self.s3_interface = static_data['s3_interface'] + self.skip_basic_checks = static_data['skip_basic_checks'] # Used for progress / grading. Currently get credit just for # completion (doesn't matter if you self-assessed correct/incorrect). diff --git a/common/lib/xmodule/xmodule/tests/test_combined_open_ended.py b/common/lib/xmodule/xmodule/tests/test_combined_open_ended.py index ef6344eb57..5f6496f823 100644 --- a/common/lib/xmodule/xmodule/tests/test_combined_open_ended.py +++ b/common/lib/xmodule/xmodule/tests/test_combined_open_ended.py @@ -48,6 +48,7 @@ class OpenEndedChildTest(unittest.TestCase): 'close_date': None, 's3_interface' : "", 'open_ended_grading_interface' : {}, + 'skip_basic_checks' : False, } definition = Mock() descriptor = Mock() @@ -167,6 +168,7 @@ class OpenEndedModuleTest(unittest.TestCase): 'close_date': None, 's3_interface' : test_util_open_ended.S3_INTERFACE, 'open_ended_grading_interface' : test_util_open_ended.OPEN_ENDED_GRADING_INTERFACE, + 'skip_basic_checks' : False, } oeparam = etree.XML(''' @@ -301,6 +303,7 @@ class CombinedOpenEndedModuleTest(unittest.TestCase): 'close_date' : "", 's3_interface' : test_util_open_ended.S3_INTERFACE, 'open_ended_grading_interface' : test_util_open_ended.OPEN_ENDED_GRADING_INTERFACE, + 'skip_basic_checks' : False, } oeparam = etree.XML(''' diff --git a/common/lib/xmodule/xmodule/tests/test_self_assessment.py b/common/lib/xmodule/xmodule/tests/test_self_assessment.py index fe55c88e82..83f6c0a8bc 100644 --- a/common/lib/xmodule/xmodule/tests/test_self_assessment.py +++ b/common/lib/xmodule/xmodule/tests/test_self_assessment.py @@ -51,6 +51,7 @@ class SelfAssessmentTest(unittest.TestCase): 'close_date': None, 's3_interface' : test_util_open_ended.S3_INTERFACE, 'open_ended_grading_interface' : test_util_open_ended.OPEN_ENDED_GRADING_INTERFACE, + 'skip_basic_checks' : False, } self.module = SelfAssessmentModule(test_system, self.location,