[Libreoffice-commits] core.git: Branch 'aoo/trunk' - writerfilter/qa
Damjan Jovanovic
damjan at apache.org
Wed Oct 14 19:08:54 PDT 2015
writerfilter/qa/cppunittests/doctok/export.map | 27 --
writerfilter/qa/cppunittests/doctok/makefile.mk | 55 ++--
writerfilter/qa/cppunittests/doctok/testdoctok.cxx | 279 +++++++++------------
3 files changed, 169 insertions(+), 192 deletions(-)
New commits:
commit 5f42875966b8a33d42a9df4c29cf8b9334aaeff3
Author: Damjan Jovanovic <damjan at apache.org>
Date: Thu Oct 15 01:13:18 2015 +0000
#i125003# migrate writerfilter/qa/cppunittests/doctok from cppunit to Google Test. Fails to
bootstrap UNO but isn't run during the build.
diff --git a/writerfilter/qa/cppunittests/doctok/export.map b/writerfilter/qa/cppunittests/doctok/export.map
deleted file mode 100644
index d4e60c3..0000000
--- a/writerfilter/qa/cppunittests/doctok/export.map
+++ /dev/null
@@ -1,27 +0,0 @@
-###############################################################
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-###############################################################
-UDK_3_0_0 {
- global:
- registerAllTestFunction;
-
- local:
- *;
-};
diff --git a/writerfilter/qa/cppunittests/doctok/makefile.mk b/writerfilter/qa/cppunittests/doctok/makefile.mk
index e6829ac..8739539 100644
--- a/writerfilter/qa/cppunittests/doctok/makefile.mk
+++ b/writerfilter/qa/cppunittests/doctok/makefile.mk
@@ -31,37 +31,56 @@ ENABLE_EXCEPTIONS=TRUE
.INCLUDE : settings.mk
-CFLAGSCXX += $(CPPUNIT_CFLAGS)
+.IF "$(ENABLE_UNIT_TESTS)" != "YES"
+all:
+ @echo unit tests are disabled. Nothing to do.
+
+.ELSE
# BEGIN ----------------------------------------------------------------
# auto generated Target:doctok by codegen.pl
-SHL1OBJS= \
+APP1OBJS= \
$(SLO)$/testdoctok.obj
-SHL1TARGET= testdoctok
-SHL1STDLIBS=\
- $(SALLIB) \
+APP1TARGET= testdoctok
+
+.IF "$(GUI)"=="UNX" || "$(GUI)"=="MAC" || "$(GUI)"=="OS2"
+RESOURCEMODELLIB=-lresourcemodel
+.ELIF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+RESOURCEMODELLIB=-lresourcemodel
+.ELSE
+RESOURCEMODELLIB=$(LB)$/iresourcemodel.lib
+.ENDIF
+.ENDIF
+
+APP1STDLIBS=\
+ $(SALLIB) \
$(UCBHELPERLIB) \
$(CPPUHELPERLIB) \
$(CPPULIB) \
- $(TESTSHL2LIB) \
- $(CPPUNITLIB)
+ $(RESOURCEMODELLIB) \
+ $(GTESTLIB)
-SHL1LIBS=\
- $(SLB)$/doctok.lib
-SHL1DEPS= \
- $(SHL1LIBS)
+.IF "$(GUI)"=="WNT"
+APP1STDLIBS+= $(LB)$/doctok.lib
+.ELIF "$(GUI)"=="UNX" && "$(GUIBASE)"!="aqua"
+APP1STDLIBS+=$(LB)$/libdoctok.so
+.ELIF "$(GUI)"=="UNX" && "$(GUIBASE)"=="aqua"
+APP1STDLIBS+=$(LB)$/libdoctok.dylib
+.ENDIF
-SHL1IMPLIB= i$(SHL1TARGET)
-# SHL1DEF= $(MISC)$/$(SHL1TARGET).def
-
-DEF1NAME =$(SHL1TARGET)
-# DEF1EXPORTFILE= export.exp
-SHL1VERSIONMAP= export.map
+APP1LIBS=\
+ $(SLB)$/doctok.lib
+APP1DEPS= \
+ $(APP1LIBS)
+APP1RPATH = NONE
+APP1TEST = enabled
# auto generated Target:doctok
# END ------------------------------------------------------------------
# --- Targets ------------------------------------------------------
.INCLUDE : target.mk
-.INCLUDE : _cppunit.mk
+
+.ENDIF # "$(ENABLE_UNIT_TESTS)" != "YES"
diff --git a/writerfilter/qa/cppunittests/doctok/testdoctok.cxx b/writerfilter/qa/cppunittests/doctok/testdoctok.cxx
index 2ffb249..9591ff0 100644
--- a/writerfilter/qa/cppunittests/doctok/testdoctok.cxx
+++ b/writerfilter/qa/cppunittests/doctok/testdoctok.cxx
@@ -21,7 +21,7 @@
// autogenerated file with codegen.pl
-#include <testshl/simpleheader.hxx>
+#include "gtest/gtest.h"
#include <osl/process.h>
#include <ucbhelper/contentbroker.hxx>
@@ -33,7 +33,7 @@
#include <com/sun/star/uno/Any.hxx>
#include <com/sun/star/container/XNameContainer.hpp>
-#include <doctok/exceptions.hxx>
+#include <resourcemodel/exceptions.hxx>
#include <doctok/WW8Document.hxx>
#include <resourcemodel/WW8ResourceModel.hxx>
@@ -43,207 +43,192 @@ namespace testdoctok
{
using namespace ::std;
using namespace ::com::sun::star;
- using namespace doctok;
+ using namespace ::writerfilter::doctok;
uno::Reference<io::XInputStream> xStream;
uno::Reference<uno::XComponentContext> xContext;
WW8Document::Pointer_t pDocument;
uno::Reference< ::com::sun::star::ucb::XSimpleFileAccess > xSimpleFileAccess;
- class test : public CppUnit::TestFixture
+ class test : public ::testing::Test
{
public:
// initialise your test code values here.
- void setUp()
+ void SetUp()
{
}
- void tearDown()
+ void TearDown()
{
}
+ }; // class test
- void testInitUno()
- {
- bool bResult = false;
+ TEST_F(test, testInitUno)
+ {
+ bool bResult = false;
- // initialise UCB-Broker
- uno::Reference<uno::XComponentContext>
- xComponentContext
- (::cppu::defaultBootstrap_InitialComponentContext());
- OSL_ASSERT( xComponentContext.is() );
+ // initialise UCB-Broker
+ uno::Reference<uno::XComponentContext>
+ xComponentContext
+ (::cppu::defaultBootstrap_InitialComponentContext());
+ OSL_ASSERT( xComponentContext.is() );
- xContext = xComponentContext;
+ xContext = xComponentContext;
- uno::Reference<lang::XMultiComponentFactory>
- xFactory(xComponentContext->getServiceManager() );
- OSL_ASSERT(xFactory.is());
+ uno::Reference<lang::XMultiComponentFactory>
+ xFactory(xComponentContext->getServiceManager() );
+ OSL_ASSERT(xFactory.is());
- uno::Sequence<uno::Any> aUcbInitSequence(2);
- aUcbInitSequence[0] <<=
- rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Local"));
- aUcbInitSequence[1] <<=
- rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Office"));
+ uno::Sequence<uno::Any> aUcbInitSequence(2);
+ aUcbInitSequence[0] <<=
+ rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Local"));
+ aUcbInitSequence[1] <<=
+ rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Office"));
- uno::Reference<lang::XMultiServiceFactory>
- xServiceFactory(xFactory, uno::UNO_QUERY);
- OSL_ASSERT( xServiceFactory.is() );
+ uno::Reference<lang::XMultiServiceFactory>
+ xServiceFactory(xFactory, uno::UNO_QUERY);
+ OSL_ASSERT( xServiceFactory.is() );
- if (xServiceFactory.is())
+ if (xServiceFactory.is())
+ {
+ sal_Bool bRet =
+ ::ucbhelper::ContentBroker::initialize(xServiceFactory,
+ aUcbInitSequence);
+
+ OSL_ASSERT(bRet);
+ if (bRet)
{
- sal_Bool bRet =
- ::ucb::ContentBroker::initialize(xServiceFactory,
- aUcbInitSequence);
+ uno::Reference< ::com::sun::star::ucb::XSimpleFileAccess >
+ xNameContainer(xFactory->createInstanceWithContext
+ (::rtl::OUString::createFromAscii
+ ("com.sun.star.ucb.SimpleFileAccess" ),
+ xComponentContext), uno::UNO_QUERY );
- OSL_ASSERT(bRet);
- if (bRet)
+ if (xNameContainer.is())
{
- uno::Reference< ::com::sun::star::ucb::XSimpleFileAccess >
- xNameContainer(xFactory->createInstanceWithContext
- (::rtl::OUString::createFromAscii
- ("com.sun.star.ucb.SimpleFileAccess" ),
- xComponentContext), uno::UNO_QUERY );
-
- if (xNameContainer.is())
- {
- xSimpleFileAccess = xNameContainer;
-
- bResult = true;
- }
+ xSimpleFileAccess = xNameContainer;
+
+ bResult = true;
}
}
-
- CPPUNIT_ASSERT_MESSAGE("UNO initialization failed",
- bResult);
}
- // insert your test code here.
- void testOpenFile()
+ ASSERT_TRUE(bResult) << "UNO initialization failed";
+ }
+
+ // insert your test code here.
+ TEST_F(test, testOpenFile)
+ {
+ try
{
- try
+ rtl_uString *dir=NULL;
+ osl_getProcessWorkingDir(&dir);
+ rtl_uString *fname=NULL;
+ //rtl_uString_newFromAscii(&fname, "/OpenDocument-v1.doc");
+ rtl_uString_newFromAscii(&fname, "/test.doc");
+ //rtl_uString_newFromAscii(&fname, "/numbers.doc");
+ rtl_uString *absfile=NULL;
+ rtl_uString_newConcat(&absfile, dir, fname);
+
+ rtl::OUString sInputFileURL( absfile );
+
+ for (sal_uInt32 n = 0; n < sInputFileURL.getLength(); ++n)
{
- rtl_uString *dir=NULL;
- osl_getProcessWorkingDir(&dir);
- rtl_uString *fname=NULL;
- //rtl_uString_newFromAscii(&fname, "/OpenDocument-v1.doc");
- rtl_uString_newFromAscii(&fname, "/test.doc");
- //rtl_uString_newFromAscii(&fname, "/numbers.doc");
- rtl_uString *absfile=NULL;
- rtl_uString_newConcat(&absfile, dir, fname);
-
- rtl::OUString sInputFileURL( absfile );
-
- for (sal_uInt32 n = 0; n < sInputFileURL.getLength(); ++n)
- {
- sal_uChar nC = sInputFileURL[n];
+ sal_uChar nC = sInputFileURL[n];
- if (nC < 0xff && isprint(nC))
- clog << static_cast<char>(nC);
- else
- clog << ".";
- }
+ if (nC < 0xff && isprint(nC))
+ clog << static_cast<char>(nC);
+ else
+ clog << ".";
+ }
- clog << endl;
+ clog << endl;
- xStream = xSimpleFileAccess->openFileRead(sInputFileURL);
+ xStream = xSimpleFileAccess->openFileRead(sInputFileURL);
- WW8Stream::Pointer_t pStream =
- WW8DocumentFactory::createStream(xContext, xStream);
+ WW8Stream::Pointer_t pStream =
+ WW8DocumentFactory::createStream(xContext, xStream);
- pDocument = WW8DocumentFactory::createDocument(pStream);
- }
- catch (doctok::Exception e)
- {
- clog << "Exception!!" << endl;
- }
+ pDocument = WW8Document::Pointer_t(WW8DocumentFactory::createDocument(pStream));
+ }
+ catch (::writerfilter::Exception e)
+ {
+ clog << "Exception!!" << endl;
+ }
- CPPUNIT_ASSERT_MESSAGE("creating document failed",
- pDocument != NULL);
+ ASSERT_TRUE(pDocument != NULL) << "creating document failed";
#if 1
- }
+ }
- void testTraversal()
- {
+ TEST_F(test, testTraversal)
+ {
#endif
- sal_uInt32 nResult = 0;
-
- try
- {
- WW8DocumentIterator::Pointer_t pIt = pDocument->begin();
- WW8DocumentIterator::Pointer_t pItEnd = pDocument->end();
+ sal_uInt32 nResult = 0;
- while (! pIt->equal(*pItEnd))
- {
- pIt->dump(clog);
-
- clog << endl;
+ try
+ {
+ WW8DocumentIterator::Pointer_t pIt = pDocument->begin();
+ WW8DocumentIterator::Pointer_t pItEnd = pDocument->end();
- WW8PropertySet::Pointer_t pAttrs = pIt->getProperties();
+ while (! pIt->equal(*pItEnd))
+ {
+ pIt->dump(clog);
- if (pAttrs != NULL)
- {
- pAttrs->dump(clog);
- }
+ clog << endl;
- pIt->getText().dump(clog);
- ++(*pIt);
- ++nResult;
- }
- }
- catch (doctok::Exception e)
- {
- clog << "Exception!!" << endl;
+// Doesn't compile:
+// WW8PropertySet::Pointer_t pAttrs = pIt->getProperties();
+//
+// if (pAttrs != NULL)
+// {
+// pAttrs->dump(clog);
+// }
+
+ pIt->getText().dump(clog);
+ ++(*pIt);
+ ++nResult;
}
+ }
+ catch (::writerfilter::Exception e)
+ {
+ clog << "Exception!!" << endl;
+ }
- char sBuffer[256];
- snprintf(sBuffer, 255, "%d", nResult);
- clog << "Iterator steps:" << sBuffer << endl;
+ char sBuffer[256];
+ snprintf(sBuffer, 255, "%d", nResult);
+ clog << "Iterator steps:" << sBuffer << endl;
- CPPUNIT_ASSERT_MESSAGE("traversing document failed",
- nResult > 0);
- }
+ ASSERT_TRUE(nResult > 0) << "traversing document failed";
+ }
- void testEvents()
+ TEST_F(test, testEvents)
+ {
+ try
{
- try
- {
- Stream::Pointer_t pStream = doctok::createStreamHandler();
+ ::writerfilter::Stream::Pointer_t pStream = ::writerfilter::createStreamHandler();
- pDocument->resolve(*pStream);
- }
- catch (doctok::Exception e)
- {
- clog << "Exception!!" << endl;
- }
+ pDocument->resolve(*pStream);
}
-
- void testEnd()
+ catch (::writerfilter::Exception e)
{
- ::ucb::ContentBroker::deinitialize();
+ clog << "Exception!!" << endl;
}
+ }
- // Change the following lines only, if you add, remove or rename
- // member functions of the current class,
- // because these macros are need by auto register mechanism.
-
- CPPUNIT_TEST_SUITE(test);
- CPPUNIT_TEST(testInitUno);
- CPPUNIT_TEST(testOpenFile);
- //CPPUNIT_TEST(testTraversal);
- CPPUNIT_TEST(testEvents);
- CPPUNIT_TEST(testEnd);
- CPPUNIT_TEST_SUITE_END();
- }; // class test
-
- // -----------------------------------------------------------------------------
- CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(testdoctok::test, "doctok");
-} // namespace doctok
+ TEST_F(test, testEnd)
+ {
+ ::ucbhelper::ContentBroker::deinitialize();
+ }
-// -----------------------------------------------------------------------------
+} // namespace doctok
-// this macro creates an empty function, which will called by the RegisterAllFunctions()
-// to let the user the possibility to also register some functions by hand.
-NOADDITIONAL;
+int main(int argc, char **argv)
+{
+ osl_setCommandArgs(argc, argv);
+ ::testing::InitGoogleTest(&argc, argv);
+ return RUN_ALL_TESTS();
+}
More information about the Libreoffice-commits
mailing list