summaryrefslogtreecommitdiff
path: root/sd/qa/unit/export-tests.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sd/qa/unit/export-tests.cxx')
-rw-r--r--sd/qa/unit/export-tests.cxx45
1 files changed, 45 insertions, 0 deletions
diff --git a/sd/qa/unit/export-tests.cxx b/sd/qa/unit/export-tests.cxx
index 7b176681ee83..66b386705fa0 100644
--- a/sd/qa/unit/export-tests.cxx
+++ b/sd/qa/unit/export-tests.cxx
@@ -80,6 +80,9 @@ public:
void testFdo79731();
void testSwappedOutImageExport();
void testLinkedGraphicRT();
+#if !defined WNT
+ void testBnc822341();
+#endif
CPPUNIT_TEST_SUITE(SdExportTest);
CPPUNIT_TEST(testN821567);
@@ -98,6 +101,9 @@ public:
CPPUNIT_TEST(testFdo79731);
CPPUNIT_TEST(testSwappedOutImageExport);
CPPUNIT_TEST(testLinkedGraphicRT);
+#if !defined WNT
+ CPPUNIT_TEST(testBnc822341);
+#endif
CPPUNIT_TEST_SUITE_END();
};
@@ -638,6 +644,45 @@ void SdExportTest::testLinkedGraphicRT()
}
}
+#if !defined WNT
+
+void SdExportTest::testBnc822341()
+{
+ // Check import / export of embedded text document
+ ::sd::DrawDocShellRef xDocShRef = loadURL(getURLFromSrc("sd/qa/unit/data/odp/bnc822341.odp"), ODP);
+ xDocShRef = saveAndReload( xDocShRef, PPTX );
+
+ // Export an LO specific ole object (imported from an ODP document)
+ {
+ SdDrawDocument *pDoc = xDocShRef->GetDoc();
+ CPPUNIT_ASSERT_MESSAGE( "no document", pDoc != NULL );
+ const SdrPage *pPage = pDoc->GetPage(1);
+ CPPUNIT_ASSERT_MESSAGE( "no page", pPage != NULL );
+
+ const SdrObject* pObj = dynamic_cast<SdrObject*>( pPage->GetObj(0) );
+ CPPUNIT_ASSERT_MESSAGE( "no object", pObj != NULL);
+ CPPUNIT_ASSERT_EQUAL( static_cast<sal_uInt16>(OBJ_OLE2), pObj->GetObjIdentifier() );
+ }
+
+ xDocShRef = saveAndReload( xDocShRef, PPTX );
+
+ // Export an MS specific ole object (imported from a PPTX document)
+ {
+ SdDrawDocument *pDoc = xDocShRef->GetDoc();
+ CPPUNIT_ASSERT_MESSAGE( "no document", pDoc != NULL );
+ const SdrPage *pPage = pDoc->GetPage(1);
+ CPPUNIT_ASSERT_MESSAGE( "no page", pPage != NULL );
+
+ const SdrObject* pObj = dynamic_cast<SdrObject*>( pPage->GetObj(0) );
+ CPPUNIT_ASSERT_MESSAGE( "no object", pObj != NULL);
+ CPPUNIT_ASSERT_EQUAL( static_cast<sal_uInt16>(OBJ_OLE2), pObj->GetObjIdentifier() );
+ }
+
+ xDocShRef->DoClose();
+}
+
+#endif
+
CPPUNIT_TEST_SUITE_REGISTRATION(SdExportTest);
CPPUNIT_PLUGIN_IMPLEMENT();