def test_full_assemble(self):
     column_readers = dict([(id,ListReader(id,vl)) for id,vl in field_values.items()])
     p = SchemaParser()
     s = p.parse(schema_text)
     ra = RecordAssembler(s, column_readers)
     fsm = ra.select_fields()
     ra.assemble()
     ra.assemble()
     print "test_full_assemble done"
 def test_dissect(self):
     p = SchemaParser()
     s = p.parse(schema_text)
     emitter = FieldEmitter(s)
     rd = RecordDissector(s, emitter)
     rd.dissect(d1)
     rd.dissect(d2)
     self.assertTrue(23 == len(emitter.values))
     print "test_dissect done"
    def test_partial_assemble(self):
        column_readers = dict([(id,ListReader(id,vl)) for id,vl in field_values.items()])

        p = SchemaParser()
        s = p.parse(schema_text)
        ra = RecordAssembler(s, column_readers)
        fsm = ra.select_fields(('DocId', 'Name.Language.Country'))
        ra.assemble()
        ra.assemble()
        print "test_partial_assemble done"
    def test_full_fsm(self):
        p = SchemaParser()
        s = p.parse(schema_text)
        ra = RecordAssembler(s, {})
        fsm = ra.select_fields()
        count = 0
        for s,n in fsm.items():
        	if s != SchemaHelper.ROOT_NODE:
	        	count += len(n.keys())
        self.assertTrue( count == 13)
        print "test_full_fsm done"
    def test_partials_fsm(self):
        p = SchemaParser()
        s = p.parse(schema_text)
        ra = RecordAssembler(s, {})
        fsm = ra.select_fields(('DocId', 'Name.Language.Country'))
        count = 0
        for s,n in fsm.items():
        	if s != SchemaHelper.ROOT_NODE:
	        	count += len(n.keys())
        self.assertTrue( count == 4);
        print "test_partial_fsm done"
 def test_parser(self):
     p = SchemaParser()
     s = p.parse(schema_text)
     self.assertTrue(len(s) == 10)
     print "test_parser done"