def testToDict(self): """Tests encoding the MR document as JSON.""" mr_yaml = status.parse_mapreduce_yaml( "mapreduce:\n" "- name: Mapreduce1\n" " mapper:\n" " handler: Handler1\n" " input_reader: Reader1\n" " params_validator: Validator1\n" " params:\n" " - name: entity_kind\n" " default: Kind1\n" " - name: human_supplied1\n" " - name: human_supplied2\n" "- name: Mapreduce2\n" " mapper:\n" " handler: Handler2\n" " input_reader: Reader2\n") all_configs = status.MapReduceYaml.to_dict(mr_yaml) self.assertEquals([{ 'name': 'Mapreduce1', 'mapper_params_validator': 'Validator1', 'mapper_params': { 'entity_kind': 'Kind1', 'human_supplied2': None, 'human_supplied1': None }, 'mapper_handler': 'Handler1', 'mapper_input_reader': 'Reader1' }, { 'mapper_input_reader': 'Reader2', 'mapper_handler': 'Handler2', 'name': 'Mapreduce2' }], all_configs)
def testBasic(self): """Tests listing available configs.""" old_get_yaml = status.get_mapreduce_yaml status.get_mapreduce_yaml = lambda: status.parse_mapreduce_yaml( "mapreduce:\n" "- name: Mapreduce1\n" " mapper:\n" " handler: Handler1\n" " input_reader: Reader1\n" " params_validator: Validator1\n" " params:\n" " - name: entity_kind\n" " default: Kind1\n" " - name: human_supplied1\n" " - name: human_supplied2\n" "- name: Mapreduce2\n" " mapper:\n" " handler: Handler2\n" " input_reader: Reader2\n" " params_validator: MapreduceValidator\n" " params:\n" " - name: foo\n" " value: bar\n") try: self.handler.get() finally: status.get_mapreduce_yaml = old_get_yaml self.assertEquals( { u'configs': [{ u'mapper_params_validator': u'Validator1', u'mapper_params': { u'entity_kind': u'Kind1', u'human_supplied2': None, u'human_supplied1': None }, u'mapper_input_reader': u'Reader1', u'mapper_handler': u'Handler1', u'name': u'Mapreduce1' }, { u'mapper_input_reader': u'Reader2', u'mapper_handler': u'Handler2', u'name': u'Mapreduce2', u'params': { u'foo': u'bar', }, }] }, json.loads(self.handler.response.out.getvalue())) self.assertEquals("text/javascript", self.handler.response.headers["Content-Type"])
def testParseOutputWriter(self): """Parsing a single document in mapreduce.yaml with output writer.""" mr_yaml = status.parse_mapreduce_yaml("mapreduce:\n" "- name: Mapreduce1\n" " mapper:\n" " handler: Handler1\n" " input_reader: Reader1\n" " output_writer: Writer1\n") self.assertTrue(mr_yaml) self.assertEquals(1, len(mr_yaml.mapreduce)) self.assertEquals("Mapreduce1", mr_yaml.mapreduce[0].name) self.assertEquals("Handler1", mr_yaml.mapreduce[0].mapper.handler) self.assertEquals("Reader1", mr_yaml.mapreduce[0].mapper.input_reader) self.assertEquals("Writer1", mr_yaml.mapreduce[0].mapper.output_writer)
def testBasic(self): """Tests listing available configs.""" old_get_yaml = status.get_mapreduce_yaml status.get_mapreduce_yaml = lambda: status.parse_mapreduce_yaml( "mapreduce:\n" "- name: Mapreduce1\n" " mapper:\n" " handler: Handler1\n" " input_reader: Reader1\n" " params_validator: Validator1\n" " params:\n" " - name: entity_kind\n" " default: Kind1\n" " - name: human_supplied1\n" " - name: human_supplied2\n" "- name: Mapreduce2\n" " mapper:\n" " handler: Handler2\n" " input_reader: Reader2\n" " params_validator: MapreduceValidator\n" " params:\n" " - name: foo\n" " value: bar\n") try: self.handler.get() finally: status.get_mapreduce_yaml = old_get_yaml self.assertEquals( {u'configs': [ {u'mapper_params_validator': u'Validator1', u'mapper_params': { u'entity_kind': u'Kind1', u'human_supplied2': None, u'human_supplied1': None}, u'mapper_input_reader': u'Reader1', u'mapper_handler': u'Handler1', u'name': u'Mapreduce1'}, {u'mapper_input_reader': u'Reader2', u'mapper_handler': u'Handler2', u'name': u'Mapreduce2', u'params': { u'foo': u'bar',}, }]}, json.loads(self.handler.response.out.getvalue())) self.assertEquals("text/javascript", self.handler.response.headers["Content-Type"])
def testToDictOutputWriter(self): """Tests encoding the MR document with output writer as JSON.""" mr_yaml = status.parse_mapreduce_yaml("mapreduce:\n" "- name: Mapreduce1\n" " mapper:\n" " handler: Handler1\n" " input_reader: Reader1\n" " output_writer: Writer1\n") all_configs = status.MapReduceYaml.to_dict(mr_yaml) self.assertEquals([ { 'name': 'Mapreduce1', 'mapper_handler': 'Handler1', 'mapper_input_reader': 'Reader1', 'mapper_output_writer': 'Writer1', }, ], all_configs)
def testParseOutputWriter(self): """Parsing a single document in mapreduce.yaml with output writer.""" mr_yaml = status.parse_mapreduce_yaml( "mapreduce:\n" "- name: Mapreduce1\n" " mapper:\n" " handler: Handler1\n" " input_reader: Reader1\n" " output_writer: Writer1\n" ) self.assertTrue(mr_yaml) self.assertEquals(1, len(mr_yaml.mapreduce)) self.assertEquals("Mapreduce1", mr_yaml.mapreduce[0].name) self.assertEquals("Handler1", mr_yaml.mapreduce[0].mapper.handler) self.assertEquals("Reader1", mr_yaml.mapreduce[0].mapper.input_reader) self.assertEquals("Writer1", mr_yaml.mapreduce[0].mapper.output_writer)
def testToDictOutputWriter(self): """Tests encoding the MR document with output writer as JSON.""" mr_yaml = status.parse_mapreduce_yaml( "mapreduce:\n" "- name: Mapreduce1\n" " mapper:\n" " handler: Handler1\n" " input_reader: Reader1\n" " output_writer: Writer1\n" ) all_configs = status.MapReduceYaml.to_dict(mr_yaml) self.assertEquals( [ { 'name': 'Mapreduce1', 'mapper_handler': 'Handler1', 'mapper_input_reader': 'Reader1', 'mapper_output_writer': 'Writer1', }, ], all_configs)
def testParse(self): """Parsing a single document in mapreduce.yaml.""" mr_yaml = status.parse_mapreduce_yaml( "mapreduce:\n" "- name: Mapreduce1\n" " mapper:\n" " handler: Handler1\n" " input_reader: Reader1\n" " params_validator: Validator1\n" " params:\n" " - name: entity_kind\n" " default: Kind1\n" " - name: human_supplied1\n" " - name: human_supplied2\n" "- name: Mapreduce2\n" " mapper:\n" " handler: Handler2\n" " input_reader: Reader2\n") self.assertTrue(mr_yaml) self.assertEquals(2, len(mr_yaml.mapreduce)) self.assertEquals("Mapreduce1", mr_yaml.mapreduce[0].name) self.assertEquals("Handler1", mr_yaml.mapreduce[0].mapper.handler) self.assertEquals("Reader1", mr_yaml.mapreduce[0].mapper.input_reader) self.assertEquals("Validator1", mr_yaml.mapreduce[0].mapper.params_validator) self.assertEquals(3, len(mr_yaml.mapreduce[0].mapper.params)) self.assertEquals("entity_kind", mr_yaml.mapreduce[0].mapper.params[0].name) self.assertEquals("Kind1", mr_yaml.mapreduce[0].mapper.params[0].default) self.assertEquals("human_supplied1", mr_yaml.mapreduce[0].mapper.params[1].name) self.assertEquals("human_supplied2", mr_yaml.mapreduce[0].mapper.params[2].name) self.assertEquals("Mapreduce2", mr_yaml.mapreduce[1].name) self.assertEquals("Handler2", mr_yaml.mapreduce[1].mapper.handler) self.assertEquals("Reader2", mr_yaml.mapreduce[1].mapper.input_reader)
def testToDict(self): """Tests encoding the MR document as JSON.""" mr_yaml = status.parse_mapreduce_yaml( "mapreduce:\n" "- name: Mapreduce1\n" " mapper:\n" " handler: Handler1\n" " input_reader: Reader1\n" " params_validator: Validator1\n" " params:\n" " - name: entity_kind\n" " default: Kind1\n" " - name: human_supplied1\n" " - name: human_supplied2\n" "- name: Mapreduce2\n" " mapper:\n" " handler: Handler2\n" " input_reader: Reader2\n") all_configs = status.MapReduceYaml.to_dict(mr_yaml) self.assertEquals( [ { 'name': 'Mapreduce1', 'mapper_params_validator': 'Validator1', 'mapper_params': { 'entity_kind': 'Kind1', 'human_supplied2': None, 'human_supplied1': None}, 'mapper_handler': 'Handler1', 'mapper_input_reader': 'Reader1' }, { 'mapper_input_reader': 'Reader2', 'mapper_handler': 'Handler2', 'name': 'Mapreduce2' } ], all_configs)