def setter(self, attribute, value): jobconf = JobConfiguration() jobconf[attribute] = value read_value = jobconf[attribute] if value is None: self.assertIsNone(read_value) else: self.assertEqual(read_value, value)
def test_constructor_from_config_string_plain(self): config_string = "job_description=Test description|job_language=it|is_audio_file_name_regex=*.mp3|is_audio_file_relative_path=.|is_hierarchy_prefix=OEBPS/|is_hierarchy_type=flat|is_task_dir_name_regex=[0-9]*|is_text_type=plain|is_text_file_name_regex=*.txt|is_text_file_relative_path=.|os_job_file_name=test_output.zip|os_job_file_container=zip|os_job_file_hierarchy_type=flat|os_job_file_hierarchy_prefix=OEBPS/mo/" jobconf = JobConfiguration(config_string) self.assertEqual(jobconf.language, Language.IT) self.assertEqual(jobconf.description, "Test description") self.assertEqual(jobconf.is_text_file_format, TextFileFormat.PLAIN) self.assertEqual(jobconf.is_text_unparsed_class_regex, None) self.assertEqual(jobconf.is_text_unparsed_id_regex, None) self.assertEqual(jobconf.is_text_unparsed_id_sort, None)
def test_constructor_from_config_string_unparsed(self): config_string = "job_description=Test description|job_language=it|is_audio_file_name_regex=*.mp3|is_audio_file_relative_path=.|is_hierarchy_prefix=OEBPS/|is_hierarchy_type=flat|is_task_dir_name_regex=[0-9]*|is_text_type=unparsed|is_text_file_name_regex=*.txt|is_text_file_relative_path=.|is_text_unparsed_class_regex=ra|is_text_unparsed_id_regex=f[0-9]*|is_text_unparsed_id_sort=numeric|os_job_file_name=test_output.zip|os_job_file_container=zip|os_job_file_hierarchy_type=flat|os_job_file_hierarchy_prefix=OEBPS/mo/" jobconf = JobConfiguration(config_string) self.assertEqual(jobconf.language, Language.IT) self.assertEqual(jobconf.description, "Test description") self.assertEqual(jobconf.is_text_file_format, TextFileFormat.UNPARSED) self.assertEqual(jobconf.is_text_unparsed_class_regex, "ra") self.assertEqual(jobconf.is_text_unparsed_id_regex, "f[0-9]*") self.assertEqual(jobconf.is_text_unparsed_id_sort, IDSortingAlgorithm.NUMERIC)
def test_config_string_missing_keys(self): jobconf = JobConfiguration() jobconf["language"] = Language.ITA jobconf["description"] = u"Test description" jobconf["i_a_name_regex"] = u"*.mp3" jobconf["i_a_relative_path"] = u"." jobconf["i_hierarchy_prefix"] = u"OEBPS/" jobconf["i_hierarchy_type"] = HierarchyType.FLAT jobconf["i_task_directory_name_regex"] = u"[0-9]*" jobconf["i_t_name_regex"] = u"*.txt" jobconf["i_t_relative_path"] = u"." jobconf["o_container_format"] = ContainerFormat.ZIP jobconf["o_hierarchy_prefix"] = u"OEBPS/mo/" jobconf["o_hierarchy_type"] = HierarchyType.FLAT jobconf["o_name"] = u"test_output.zip" expected = u"is_audio_file_name_regex=*.mp3|is_audio_file_relative_path=.|is_hierarchy_prefix=OEBPS/|is_hierarchy_type=flat|is_task_dir_name_regex=[0-9]*|is_text_file_name_regex=*.txt|is_text_file_relative_path=.|job_description=Test description|job_language=ita|os_job_file_container=zip|os_job_file_hierarchy_prefix=OEBPS/mo/|os_job_file_hierarchy_type=flat|os_job_file_name=test_output.zip" self.assertEqual(jobconf.config_string, expected)
def test_config_string_missing_keys(self): jobconf = JobConfiguration() jobconf.language = Language.IT jobconf.description = "Test description" jobconf.is_audio_file_name_regex = "*.mp3" jobconf.is_audio_file_relative_path = "." jobconf.is_hierarchy_prefix = "OEBPS/" jobconf.is_hierarchy_type = HierarchyType.FLAT jobconf.is_task_directory_name_regex = "[0-9]*" jobconf.is_text_file_format = TextFileFormat.PLAIN jobconf.is_text_file_name_regex = "*.txt" jobconf.is_text_file_relative_path = "." jobconf.os_container_format = ContainerFormat.ZIP jobconf.os_hierarchy_prefix = "OEBPS/mo/" jobconf.os_hierarchy_type = HierarchyType.FLAT jobconf.os_file_name = "test_output.zip" expected = "job_description=Test description|job_language=it|is_audio_file_name_regex=*.mp3|is_audio_file_relative_path=.|is_hierarchy_prefix=OEBPS/|is_hierarchy_type=flat|is_task_dir_name_regex=[0-9]*|is_text_type=plain|is_text_file_name_regex=*.txt|is_text_file_relative_path=.|os_job_file_name=test_output.zip|os_job_file_container=zip|os_job_file_hierarchy_type=flat|os_job_file_hierarchy_prefix=OEBPS/mo/" self.assertEqual(jobconf.config_string(), expected)
def test_config_string_full(self): jobconf = JobConfiguration() jobconf.language = Language.IT jobconf.description = "Test description" jobconf.is_audio_file_name_regex = "*.mp3" jobconf.is_audio_file_relative_path = "." jobconf.is_hierarchy_prefix = "OEBPS/" jobconf.is_hierarchy_type = HierarchyType.FLAT jobconf.is_task_directory_name_regex = "[0-9]*" jobconf.is_text_file_format = TextFileFormat.UNPARSED jobconf.is_text_file_name_regex = "*.txt" jobconf.is_text_file_relative_path = "." jobconf.is_text_unparsed_class_regex = "ra" jobconf.is_text_unparsed_id_regex = "f[0-9]*" jobconf.is_text_unparsed_id_sort = IDSortingAlgorithm.NUMERIC jobconf.os_container_format = ContainerFormat.ZIP jobconf.os_hierarchy_prefix = "OEBPS/mo/" jobconf.os_hierarchy_type = HierarchyType.FLAT jobconf.os_file_name = "test_output.zip" expected = "job_description=Test description|job_language=it|is_audio_file_name_regex=*.mp3|is_audio_file_relative_path=.|is_hierarchy_prefix=OEBPS/|is_hierarchy_type=flat|is_task_dir_name_regex=[0-9]*|is_text_type=unparsed|is_text_file_name_regex=*.txt|is_text_file_relative_path=.|is_text_unparsed_class_regex=ra|is_text_unparsed_id_regex=f[0-9]*|is_text_unparsed_id_sort=numeric|os_job_file_name=test_output.zip|os_job_file_container=zip|os_job_file_hierarchy_type=flat|os_job_file_hierarchy_prefix=OEBPS/mo/" self.assertEqual(jobconf.config_string(), expected)
def test_job_set_configuration(self): job = Job() jobconf = JobConfiguration() job.configuration = jobconf self.assertIsNotNone(job.configuration)
def test_constructor_from_config_string_plain(self): config_string = u"job_description=Test description|job_language=ita|is_audio_file_name_regex=*.mp3|is_audio_file_relative_path=.|is_hierarchy_prefix=OEBPS/|is_hierarchy_type=flat|is_task_dir_name_regex=[0-9]*|is_text_type=plain|is_text_file_name_regex=*.txt|is_text_file_relative_path=.|os_job_file_name=test_output.zip|os_job_file_container=zip|os_job_file_hierarchy_type=flat|os_job_file_hierarchy_prefix=OEBPS/mo/" jobconf = JobConfiguration(config_string) self.assertEqual(jobconf["language"], Language.ITA) self.assertEqual(jobconf["description"], u"Test description")
def test_job_set_configuration(self): job = Job() jobconf = JobConfiguration() job.configuration = jobconf self.assertNotEqual(job.configuration, None)
def setter(self, attribute, value): jobconf = JobConfiguration() setattr(jobconf, attribute, value) self.assertEqual(getattr(jobconf, attribute), value)