Esempio n. 1
0
 def test_read_write_identical_all_types(self):
     """ Class -> AST -> Class works for all field types """
     schema_reader = PythonSchemaReader(AllTypes)
     ast = schema_reader.get_ast()
     schema_writer = PythonSchemaWriter(ast)
     print schema_writer.generate_module_source()
     module = schema_writer.get_module()
     self.assertTrue(hasattr(module, 'AllTypes'))
Esempio n. 2
0
 def test_read_write_identical_fields(self):
     """ Class -> AST -> Class should yield same fields """
     schema_reader = PythonSchemaReader(NodeData)
     ast = schema_reader.get_ast()
     schema_writer = PythonSchemaWriter(ast)
     module = schema_writer.get_module()
     self.assertTrue(hasattr(module, 'NodeData'))
     # assert field names are the same
     self.assertEquals(
             sorted([f.field_name for f in NodeData.get_field_definitions()]),
             sorted([f.field_name for f in module.NodeData.get_field_definitions()]))
     # assert field types are the same
     for field in NodeData.get_field_definitions():
         field_name = field.field_name
         self.assertEquals(
                 field.field_type.get_type_name(),
                 module.NodeData.get_field_definition(field_name).field_type.get_type_name())