Beispiel #1
0
 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)
Beispiel #2
0
    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"])
Beispiel #3
0
    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"])
Beispiel #5
0
 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)
Beispiel #8
0
    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 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)