def test_parse_child_table_cell(self): from hwp5.binmodel import init_record_parsing_context from hwp5.binmodel import parse_model from hwp5.binmodel import TableCell record = self.tablecontrol_record context = init_record_parsing_context(testcontext, record) model = record parse_model(context, model) context['seen_table_body'] = True child_record = self.tablecell_record child_context = init_record_parsing_context(testcontext, child_record) child_model = child_record child_context['parent'] = context, model parse_model(child_context, child_model) self.assertEquals(TableCell, child_model['type']) self.assertEquals(TableCell, child_model['type']) self.assertEquals(dict(padding=dict(top=141, right=141, bottom=141, left=141), rowspan=1, colspan=1, borderfill_id=1, height=282, listflags=32L, width=20227, unknown1=0, unknown_width=20227, paragraphs=1, col=0, row=0), child_model['content']) self.assertEquals('', child_context['stream'].read())
def test_parse_child_table_caption(self): from hwp5.binmodel import init_record_parsing_context from hwp5.binmodel import parse_model from hwp5.binmodel import TableCaption record = self.tablecontrol_record context = init_record_parsing_context(testcontext, record) model = record parse_model(context, model) context['seen_table_body'] = False child_record = self.tablecaption_record child_context = init_record_parsing_context(testcontext, child_record) child_context['parent'] = context, model child_model = child_record parse_model(child_context, child_model) self.assertEquals(TableCaption, child_model['type']) self.assertEquals( dict(listflags=0, width=8504, maxsize=40454, unknown1=0, flags=3L, separation=850, paragraphs=2), child_model['content']) self.assertEquals('', child_context['stream'].read())
def test_parse_child_table_caption(self): from hwp5.binmodel import init_record_parsing_context from hwp5.binmodel import parse_model from hwp5.binmodel import TableCaption record = self.tablecontrol_record context = init_record_parsing_context(testcontext, record) model = record parse_model(context, model) context['seen_table_body'] = False child_record = self.tablecaption_record child_context = init_record_parsing_context(testcontext, child_record) child_context['parent'] = context, model child_model = child_record parse_model(child_context, child_model) self.assertEquals(TableCaption, child_model['type']) self.assertEquals(dict(listflags=0, width=8504, max_width=40454, unknown1=0, flags=3L, separation=850, paragraphs=2), child_model['content']) self.assertEquals('', child_context['stream'].read())
def test_parse_child_table_cell(self): record = self.tablecontrol_record context = init_record_parsing_context(testcontext, record) model = record parse_model(context, model) context['seen_table_body'] = True child_record = self.tablecell_record child_context = init_record_parsing_context(testcontext, child_record) child_model = child_record child_context['parent'] = context, model parse_model(child_context, child_model) self.assertEqual(TableCell, child_model['type']) self.assertEqual(TableCell, child_model['type']) self.assertEqual( dict(padding=dict(top=141, right=141, bottom=141, left=141), rowspan=1, colspan=1, borderfill_id=1, height=282, listflags=32, width=20227, unknown1=0, unknown_width=20227, paragraphs=1, col=0, row=0), child_model['content']) self.assertEqual(b'', child_context['stream'].read())
def testParse(self): record = next(read_records(self.stream)) context = init_record_parsing_context(testcontext, record) model = record parse_model(context, model) self.assertEqual(ListHeader, model['type']) self.assertEqual(1, model['content']['paragraphs']) self.assertEqual(0x20, model['content']['listflags']) self.assertEqual(0, model['content']['unknown1']) self.assertEqual(8, context['stream'].tell())
def testParse(self): record = next(read_records(self.stream)) context = init_record_parsing_context(testcontext, record) model = record parse_model(context, model) self.assertTrue(BinData, model['type']) self.assertEqual(BinData.StorageType.EMBEDDING, BinData.Flags(model['content']['flags']).storage) self.assertEqual(2, model['content']['bindata']['storage_id']) self.assertEqual('jpg', model['content']['bindata']['ext'])
def test_parse(self): f = self.open_fixture('5006-controldata.record', 'r') try: record = pickle.load(f) finally: f.close() context = init_record_parsing_context(dict(), record) model = record parse_model(context, model) self.assertEquals(ControlData, model['type']) self.assertEquals(dict(), model['content'])
def test_read_paracharshape(self): parent_context = dict() parent_model = dict(content=dict(charshapes=5)) record = self.paracharshape_record context = init_record_parsing_context(dict(), record) context['parent'] = parent_context, parent_model model = record parse_model(context, model) self.assertEqual(dict(charshapes=[(0, 7), (19, 8), (23, 7), (24, 9), (26, 7)]), model['content'])
def test_read_paracharshape(self): parent_context = dict() parent_model = dict(content=dict(charshapes=5)) record = self.paracharshape_record context = init_record_parsing_context(dict(), record) context['parent'] = parent_context, parent_model model = record parse_model(context, model) self.assertEqual( dict(charshapes=[(0, 7), (19, 8), (23, 7), (24, 9), (26, 7)]), model['content'])
def test_parse(self): # 5006-controldata.record record = \ {'level': 2, 'payload': b'\x1b\x02\x01\x00\x00\x00\x00@\x01\x00\x03\x00X\xc7H\xc5\x85\xba', # noqa 'seqno': 27, 'size': 18, 'tagid': 87, 'tagname': 'HWPTAG_CTRL_DATA'} context = init_record_parsing_context(dict(), record) model = record parse_model(context, model) self.assertEqual(ControlData, model['type']) self.assertEqual(dict(), model['content'])
def testParse(self): from hwp5.binmodel import ListHeader from hwp5.binmodel import init_record_parsing_context from hwp5.binmodel import parse_model record = read_records(self.stream).next() context = init_record_parsing_context(testcontext, record) model = record parse_model(context, model) self.assertEquals(ListHeader, model['type']) self.assertEquals(1, model['content']['paragraphs']) self.assertEquals(0x20L, model['content']['listflags']) self.assertEquals(0, model['content']['unknown1']) self.assertEquals(8, context['stream'].tell())
def testParse(self): from hwp5.binmodel import BinData from hwp5.binmodel import init_record_parsing_context from hwp5.binmodel import parse_model record = read_records(self.stream).next() context = init_record_parsing_context(testcontext, record) model = record parse_model(context, model) self.assertTrue(BinData, model['type']) self.assertEquals(BinData.StorageType.EMBEDDING, BinData.Flags(model['content']['flags']).storage) self.assertEquals(2, model['content']['bindata']['storage_id']) self.assertEquals('jpg', model['content']['bindata']['ext'])
def test_parse(self): # parent_record = self.control_gso_record # if parent model is GShapeObjectControl parent_model = dict(type=GShapeObjectControl) record = self.shapecomponent_record context = init_record_parsing_context(testcontext, record) context['parent'] = dict(), parent_model model = record parse_model(context, model) self.assertEqual(model['type'], ShapeComponent) self.assertTrue('chid0' in model['content'])
def test_parse(self): import pickle f = self.open_fixture('5006-controldata.record', 'r') try: record = pickle.load(f) finally: f.close() from hwp5.binmodel import init_record_parsing_context from hwp5.binmodel import parse_model from hwp5.binmodel import ControlData context = init_record_parsing_context(dict(), record) model = record parse_model(context, model) self.assertEquals(ControlData, model['type']) self.assertEquals(dict(), model['content'])
def testParsePass1(self): record = next(read_records(self.stream)) context = init_record_parsing_context(testcontext, record) model = record parse_model(context, model) self.assertTrue(TableControl, model['type']) self.assertEqual(1453501933, model['content']['instance_id']) self.assertEqual(0x0, model['content']['x']) self.assertEqual(0x0, model['content']['y']) self.assertEqual(0x1044, model['content']['height']) self.assertEqual(0x9e06, model['content']['width']) self.assertEqual(0, model['content']['unknown1']) self.assertEqual(0x82a2311, model['content']['flags']) self.assertEqual(0, model['content']['z_order']) self.assertEqual(dict(left=283, right=283, top=283, bottom=283), model['content']['margin']) self.assertEqual('tbl ', model['content']['chid'])
def test_parse_model(self): record = next(read_records(self.stream)) context = init_record_parsing_context(self.ctx, record) model = record parse_model(context, model) model_type = model['type'] model_content = model['content'] self.assertEqual(TableBody, model_type) self.assertEqual(dict(left=141, right=141, top=141, bottom=141), model_content['padding']) self.assertEqual(0x4000006, model_content['flags']) self.assertEqual(2, model_content['cols']) self.assertEqual(2, model_content['rows']) self.assertEqual(1, model_content['borderfill_id']) self.assertEqual([2, 2], model_content['rowcols']) self.assertEqual(0, model_content['cellspacing']) self.assertEqual([], model_content['validZones'])
def test_parse_shapecomponent_textbox_paragraph_list(self): record = self.shapecomponent_record context = init_record_parsing_context(testcontext, record) model = record model['type'] = ShapeComponent child_record = self.textbox_paragraph_list_record child_context = init_record_parsing_context(testcontext, child_record) child_context['parent'] = context, model child_model = child_record parse_model(child_context, child_model) self.assertEqual(TextboxParagraphList, child_model['type']) self.assertEqual( dict(listflags=32, padding=dict(top=283, right=283, bottom=283, left=283), unknown1=0, maxwidth=11763, paragraphs=1), child_model['content']) self.assertEqual(b'', child_context['stream'].read())
def test_parse_shapecomponent_textbox_paragraph_list(self): record = self.shapecomponent_record context = init_record_parsing_context(testcontext, record) model = record model['type'] = ShapeComponent child_record = self.textbox_paragraph_list_record child_context = init_record_parsing_context(testcontext, child_record) child_context['parent'] = context, model child_model = child_record parse_model(child_context, child_model) self.assertEqual(TextboxParagraphList, child_model['type']) self.assertEqual(dict(listflags=32, padding=dict(top=283, right=283, bottom=283, left=283), unknown1=0, maxwidth=11763, paragraphs=1), child_model['content']) self.assertEqual(b'', child_context['stream'].read())
def test_parse_child(self): record = self.header_record context = init_record_parsing_context(testcontext, record) model = record parse_model(context, model) child_record = self.header_paragraph_list_record child_context = init_record_parsing_context(testcontext, child_record) child_context['parent'] = context, model child_model = child_record parse_model(child_context, child_model) self.assertEqual(HeaderParagraphList, child_model['type']) self.assertEqual(dict(textrefsbitmap=0, numberrefsbitmap=0, height=4252, listflags=0, width=42520, unknown1=0, paragraphs=1), child_model['content'])
def test_parse_child(self): record = self.header_record context = init_record_parsing_context(testcontext, record) model = record parse_model(context, model) child_record = self.header_paragraph_list_record child_context = init_record_parsing_context(testcontext, child_record) child_context['parent'] = context, model child_model = child_record parse_model(child_context, child_model) self.assertEqual(HeaderParagraphList, child_model['type']) self.assertEqual( dict(textrefsbitmap=0, numberrefsbitmap=0, height=4252, listflags=0, width=42520, unknown1=0, paragraphs=1), child_model['content'])
def test_parse_model(self): from hwp5.binmodel import TableBody from hwp5.binmodel import init_record_parsing_context from hwp5.binmodel import parse_model record = read_records(self.stream).next() context = init_record_parsing_context(self.ctx, record) model = record parse_model(context, model) model_type = model['type'] model_content = model['content'] self.assertEquals(TableBody, model_type) self.assertEquals(dict(left=141, right=141, top=141, bottom=141), model_content['padding']) self.assertEquals(0x4000006L, model_content['flags']) self.assertEquals(2, model_content['cols']) self.assertEquals(2, model_content['rows']) self.assertEquals(1, model_content['borderfill_id']) self.assertEquals([2, 2], model_content['rowcols']) self.assertEquals(0, model_content['cellspacing']) self.assertEquals([], model_content['validZones'])