def test_save_nogenerator(self): document = self.document temp = BytesIO() document.save(temp) temp.seek(0) new = Document(temp) generator = new.get_part(ODF_META).get_generator() self.assertTrue(generator.startswith("odfdo"))
def test_save_generator(self): document = self.document.clone document.get_part(ODF_META).set_generator("toto") temp = BytesIO() document.save(temp) temp.seek(0) new = Document(temp) generator = new.get_part(ODF_META).get_generator() self.assertEqual(generator, "toto")
class ManifestTestCase(TestCase): def setUp(self): self.document = Document("samples/frame_image.odp") self.manifest = self.document.get_part(ODF_MANIFEST) self.image_path = "Pictures/100002010000012C00000042188DCB81589D2C10.png" def test_get_manifest(self): self.assertTrue(type(self.manifest) is Manifest) def test_get_path_list(self): results = self.manifest.get_paths() self.assertEqual(len(results), 9) def test_get_path_media_list(self): results = self.manifest.get_path_medias() self.assertEqual(len(results), 9) root = results[0] self.assertEqual(root, ("/", ODF_PRESENTATION)) def test_get_media_type_root(self): self.assertEqual(self.manifest.get_media_type("/"), ODF_PRESENTATION) def test_get_media_type_directory(self): self.assertEqual(self.manifest.get_media_type("Pictures/"), None) def test_get_media_type_other(self): path = self.image_path self.assertEqual(self.manifest.get_media_type(path), "image/png") def test_get_media_type_missing(self): self.assertTrue(self.manifest.get_media_type("LpOD") is None) def test_set_media_type(self): manifest = self.manifest.clone path = self.image_path self.assertEqual(manifest.get_media_type(path), "image/png") manifest.set_media_type(path, "image/jpeg") self.assertEqual(manifest.get_media_type(path), "image/jpeg") def test_set_media_type_missing(self): manifest = self.manifest.clone self.assertRaises(KeyError, manifest.set_media_type, "LpOD", "") def test_add_full_path(self): manifest = self.manifest.clone self.assertTrue(manifest.get_media_type("LpOD") is None) manifest.add_full_path("LpOD", "") self.assertEqual(manifest.get_media_type("LpOD"), "") def test_add_full_path_existing(self): manifest = self.manifest.clone path = self.image_path self.assertEqual(manifest.get_media_type(path), "image/png") manifest.add_full_path(path, "image/jpeg") self.assertEqual(manifest.get_media_type(path), "image/jpeg") def test_del_full_path(self): manifest = self.manifest.clone path = self.image_path self.assertEqual(manifest.get_media_type(path), "image/png") manifest.del_full_path(path) self.assertTrue(manifest.get_media_type(path) is None)
def setUp(self): document = Document("samples/meta.odt") self.meta = document.get_part(ODF_META)
class TestUserDefined(TestCase): def setUp(self): self.document = Document('samples/meta.odt') self.meta = self.document.get_part(ODF_META) def test_create_user_defined_1(self): element = UserDefined('unknown_in_meta', value=42, value_type='float', text=None, style=None, from_document=self.document) expected = ('<text:user-defined text:name="unknown_in_meta" ' 'office:value-type="float" ' 'office:value="42">42</text:user-defined>') self.assertEqual(element.serialize(), expected) def test_create_user_defined_2(self): element = UserDefined('unknown_in_meta2', value=datetime(2013, 12, 30), value_type='date', text='2013-12-30', style=None, from_document=self.document) expected = ('<text:user-defined text:name="unknown_in_meta2" ' 'office:value-type="date" ' 'office:date-value="2013-12-30T00:00:00">2013-12-30' '</text:user-defined>') self.assertEqual(element.serialize(), expected) def test_create_user_defined_2_no_doc(self): element = UserDefined('unknown_in_meta2', value=datetime(2013, 12, 30), value_type='date', text='2013-12-30', style=None, from_document=None) expected = ('<text:user-defined text:name="unknown_in_meta2" ' 'office:value-type="date" ' 'office:date-value="2013-12-30T00:00:00">2013-12-30' '</text:user-defined>') self.assertEqual(element.serialize(), expected) def test_create_user_defined_3_existing(self): element = UserDefined('Référence', from_document=self.document) expected = ('<text:user-defined text:name="%s" ' 'office:value-type="boolean" ' 'office:boolean-value="true">' 'true</text:user-defined>') % 'Référence' self.assertEqual(element.serialize(), expected) def test_create_user_defined_4_existing(self): element = UserDefined( 'Référence', value=False, # default value if not existing value_type='boolean', from_document=self.document) expected = ('<text:user-defined text:name="%s" ' 'office:value-type="boolean" ' 'office:boolean-value="true">' 'true</text:user-defined>') % 'Référence' self.assertEqual(element.serialize(), expected) def test_create_user_defined_5_nodoc(self): element = UserDefined( 'Référence', value=False, # default value if not existing value_type='boolean', from_document=None) expected = ('<text:user-defined text:name="%s" ' 'office:value-type="boolean" ' 'office:boolean-value="false">' 'false</text:user-defined>') % 'Référence' self.assertEqual(element.serialize(), expected) def test_get_user_defined(self): element = UserDefined( 'Référence', value=False, # default value if not existing value_type='boolean', from_document=self.document) body = self.document.body para = body.get_paragraph() para.append(element) user_defined = body.get_user_defined('Référence') expected = ('<text:user-defined text:name="%s" ' 'office:value-type="boolean" ' 'office:boolean-value="true">' 'true</text:user-defined>') % 'Référence' self.assertEqual(user_defined.serialize(), expected) def test_get_user_defined_list(self): element = UserDefined( 'Référence', value=False, # default value if not existing value_type='boolean', from_document=self.document) body = self.document.body para = body.get_paragraph() para.append(element) element2 = UserDefined('unknown_in_meta2', value=datetime(2013, 12, 30), value_type='date', text='2013-12-30', style=None, from_document=None) para.append(element2) user_defined_list = body.get_user_defined_list() self.assertEqual(len(user_defined_list), 2) def test_get_user_defined_value(self): element = UserDefined( 'Référence', value=True, # default value if not existing value_type='boolean', from_document=self.document) body = self.document.body para = body.get_paragraph() para.append(element) element2 = UserDefined('unknown_in_meta2', value=datetime(2013, 12, 30), value_type='date', text='2013-12-30', style=None, from_document=None) para.append(element2) value = body.get_user_defined_value('Référence') self.assertEqual(value, True) value = body.get_user_defined_value('unknown_in_meta2') self.assertEqual(value, datetime(2013, 12, 30))