Do build sal unit tests for iOS, too

We can't run them in the normal way, but we build the tests as static
archives, which we link into the single sal_cppunittester_all
executable. (Work in progress, so far just a part of the tests are
linked into it.)

There is no makefilery yet to actually construct a complete iOS app
bundle (.app directory), so just copy (in this case) the
sal_cppunittester_all iOS executable on top of the executbale some
dummy iOS app you build in Xcode... works fine, can be debugged that
way.
This commit is contained in:
Tor Lillqvist
2011-07-10 14:43:03 +03:00
parent 7e8ce369a7
commit 6ab96ee3d5
26 changed files with 92 additions and 73 deletions

View File

@@ -49,6 +49,10 @@ ENABLE_EXCEPTIONS=TRUE
CFLAGS+= $(LFS_CFLAGS)
CXXFLAGS+= $(LFS_CFLAGS)
.IF "$(OS)" == "IOS"
CFLAGSCXX+=-D__IPHONE_OS_VERSION_MIN_REQUIRED=40300
.ENDIF
# --- Files --------------------------------------------------------
SLOFILES= \
@@ -113,7 +117,7 @@ OBJFILES= $(OBJ)$/conditn.obj \
$(OBJ)$/readwrite_helper.obj
.IF "$(OS)"=="MACOSX"
.IF "$(OS)"=="MACOSX" || "$(OS)"=="IOS"
SLOFILES += $(SLO)$/osxlocale.obj
.ENDIF

View File

@@ -35,7 +35,9 @@ ENABLE_EXCEPTIONS = TRUE
CFLAGSCXX += $(CPPUNIT_CFLAGS)
.IF "$(CROSS_COMPILING)"!="YES"
.IF "$(OS)" == "IOS"
CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
.ENDIF
SHL1IMPLIB = i$(SHL1TARGET)
SHL1OBJS = $(SLO)/ByteSequence.obj
@@ -47,7 +49,5 @@ DEF1NAME = $(SHL1TARGET)
SLOFILES = $(SHL1OBJS)
.ENDIF
.INCLUDE: target.mk
.INCLUDE: $(PRJ)$/qa$/cppunit_local.mk

View File

@@ -36,7 +36,9 @@ ENABLE_EXCEPTIONS=TRUE
.INCLUDE : settings.mk
.IF "$(CROSS_COMPILING)"!="YES"
.IF "$(OS)" == "IOS"
CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
.ENDIF
CFLAGS+= $(LFS_CFLAGS)
CXXFLAGS+= $(LFS_CFLAGS)
@@ -63,8 +65,6 @@ SHL1RPATH = NONE
# do this here, so we get right dependencies
SLOFILES=$(SHL1OBJS)
.ENDIF
# --- Targets ------------------------------------------------------
.INCLUDE : target.mk

View File

@@ -47,8 +47,6 @@ TARGET=whole_sal_qa
ALLTAR : test_all
.ENDIF
.IF "$(CROSS_COMPILING)"!="YES"
# OTHER STUFF ------------------------------------------------------
# test : test_all
@@ -62,5 +60,3 @@ test_all:
@echo - start sal unit tests
@echo ----------------------------------------------------------
$(PERL) buildall.pl $(TESTOPT)
.ENDIF

View File

@@ -36,7 +36,9 @@ ENABLE_EXCEPTIONS=TRUE
.INCLUDE : settings.mk
.IF "$(CROSS_COMPILING)"!="YES"
.IF "$(OS)" == "IOS"
CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
.ENDIF
CFLAGS+= $(LFS_CFLAGS)
CXXFLAGS+= $(LFS_CFLAGS)
@@ -53,10 +55,8 @@ SHL1IMPLIB= i$(SHL1TARGET)
DEF1NAME =$(SHL1TARGET)
SHL1VERSIONMAP = $(PRJ)$/qa$/export.map
# auto generated Target:Condition
# END ------------------------------------------------------------------
.ENDIF
# ------------------------------------------------------------------
SLOFILES=$(SHL1OBJS)
# --- Targets ------------------------------------------------------

View File

@@ -36,8 +36,6 @@ ENABLE_EXCEPTIONS=TRUE
.INCLUDE : settings.mk
.IF "$(CROSS_COMPILING)"!="YES"
CFLAGS+= $(LFS_CFLAGS)
CXXFLAGS+= $(LFS_CFLAGS)
@@ -79,9 +77,7 @@ SHL3VERSIONMAP = $(PRJ)$/qa$/export.map
#------------------------------- All object files -------------------------------
# do this here, so we get right dependencies
SLOFILES=$(SHL1OBJS)
.ENDIF
SLOFILES=$(SHL1OBJS) $(SHL2OBJS) $(SHL3OBJS)
# --- Targets ------------------------------------------------------

View File

@@ -29,6 +29,10 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sal.hxx"
#ifdef IOS
#define CPPUNIT_PLUGIN_EXPORTED_NAME cppunitTest_qa_osl_File
#endif
//------------------------------------------------------------------------
// include files
//------------------------------------------------------------------------

View File

@@ -29,6 +29,10 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sal.hxx"
#ifdef IOS
#define CPPUNIT_PLUGIN_EXPORTED_NAME cppunitTest_osl_old_test_file
#endif
// LLA:
// this file is converted to use with testshl2
// original was placed in sal/test/textenc.cxx

View File

@@ -29,6 +29,10 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sal.hxx"
#ifdef IOS
#define CPPUNIT_PLUGIN_EXPORTED_NAME cppunitTest_tcwf
#endif
#include <cppunit/TestFixture.h>
#include <cppunit/extensions/HelperMacros.h>
#include <cppunit/plugin/TestPlugIn.h>
@@ -43,7 +47,7 @@ using ::rtl::OUStringToOString;
using ::rtl::OString;
//Use to silence OSL_ warnings for a deliberate error
extern "C" void SAL_CALL suppressOslDebugMessage( const sal_Char *, sal_Int32, const sal_Char * )
extern "C" void SAL_CALL suppressOslDebugMessage2( const sal_Char *, sal_Int32, const sal_Char * )
{
}
@@ -71,7 +75,7 @@ public:
//deliberate errors, suppress run-time warning for operations on
//un-opened File
pfunc_osl_printDetailedDebugMessage pOldDebugMessageFunc =
osl_setDetailedDebugMessageFunc( &suppressOslDebugMessage );
osl_setDetailedDebugMessageFunc( &suppressOslDebugMessage2 );
char buffer[1];
sal_uInt64 written = 0;

View File

@@ -37,7 +37,9 @@ ENABLE_EXCEPTIONS = TRUE
.INCLUDE: settings.mk
.IF "$(CROSS_COMPILING)"!="YES"
.IF "$(OS)" == "IOS"
CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
.ENDIF
CFLAGSCXX += $(CPPUNIT_CFLAGS)
@@ -53,8 +55,6 @@ DEF1NAME = $(SHL1TARGET)
SLOFILES = $(SHL1OBJS)
.ENDIF
.INCLUDE: target.mk
.INCLUDE: _cppunit.mk

View File

@@ -36,7 +36,9 @@ ENABLE_EXCEPTIONS=TRUE
.INCLUDE : settings.mk
.IF "$(CROSS_COMPILING)"!="YES"
.IF "$(OS)" == "IOS"
CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
.ENDIF
CFLAGS+= $(LFS_CFLAGS)
CXXFLAGS+= $(LFS_CFLAGS)
@@ -72,9 +74,8 @@ SHL2DEF= $(MISC)$/$(SHL2TARGET).def
DEF2NAME =$(SHL2TARGET)
SHL2VERSIONMAP= $(PRJ)$/qa$/export.map
# END ------------------------------------------------------------------
.ENDIF
SLOFILES = $(SHL2OBJS)
# --- Targets ------------------------------------------------------

View File

@@ -190,6 +190,8 @@ namespace osl_Module
::osl::Module aMod;
bRes = aMod.is();
printf ("Here we are\n");
CPPUNIT_ASSERT_MESSAGE( "#test comment#: test constructor without parameter.",
sal_False == bRes );
}

View File

@@ -35,8 +35,6 @@ ENABLE_EXCEPTIONS=TRUE
.INCLUDE : settings.mk
.IF "$(CROSS_COMPILING)"!="YES"
CFLAGS+= $(LFS_CFLAGS)
CXXFLAGS+= $(LFS_CFLAGS)
@@ -79,8 +77,6 @@ SHL2DEPN=$(APP3TARGETN) \
SLOFILES=$(SHL1OBJS) $(SHL2OBJS)
.ENDIF
# --- Targets ------------------------------------------------------
.INCLUDE : target.mk

View File

@@ -29,6 +29,10 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sal.hxx"
#ifdef IOS
#define CPPUNIT_PLUGIN_EXPORTED_NAME cppunitTest_osl_Thread
#endif
#ifdef WNT
#define NOMINMAX
#include <windows.h>

View File

@@ -29,6 +29,10 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sal.hxx"
#ifdef IOS
#define CPPUNIT_PLUGIN_EXPORTED_NAME cppunitTest_osl_process
#endif
#include <cppunit/TestFixture.h>
#include <cppunit/extensions/HelperMacros.h>
#include <cppunit/plugin/TestPlugIn.h>

View File

@@ -36,7 +36,9 @@ ENABLE_EXCEPTIONS=TRUE
.INCLUDE : settings.mk
.IF "$(CROSS_COMPILING)"!="YES"
.IF "$(OS)" == "IOS"
CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
.ENDIF
CFLAGS+= $(LFS_CFLAGS)
CXXFLAGS+= $(LFS_CFLAGS)
@@ -57,10 +59,8 @@ SHL1DEF= $(MISC)$/$(SHL1TARGET).def
DEF1NAME =$(SHL1TARGET)
SHL1VERSIONMAP= $(PRJ)$/qa$/export.map
# auto generated Target:Security
# END ------------------------------------------------------------------
.ENDIF
SLOFILES = $(SHL1OBJS)
# --- Targets ------------------------------------------------------

View File

@@ -126,12 +126,12 @@ namespace osl_Security
CPPUNIT_TEST_SUITE( logonUser );
if ( !aStringForward.equals( aNullURL ) && aStringForward.indexOf( (sal_Unicode)' ' ) != -1 && ( aStringForward.indexOf( ( sal_Unicode ) ' ' ) == aStringForward.lastIndexOf( ( sal_Unicode ) ' ' ) ) )
if ( !aStringForward.equals( aNullUrl ) && aStringForward.indexOf( (sal_Unicode)' ' ) != -1 && ( aStringForward.indexOf( ( sal_Unicode ) ' ' ) == aStringForward.lastIndexOf( ( sal_Unicode ) ' ' ) ) )
/// if user name and passwd are forwarded
{
CPPUNIT_TEST( logonUser_user_pwd );
}
if ( !aStringForward.equals( aNullURL ) && aStringForward.indexOf( (sal_Unicode)' ' ) != -1 && ( aStringForward.indexOf( ( sal_Unicode ) ' ' ) != aStringForward.lastIndexOf( ( sal_Unicode ) ' ' ) ) )
if ( !aStringForward.equals( aNullUrl ) && aStringForward.indexOf( (sal_Unicode)' ' ) != -1 && ( aStringForward.indexOf( ( sal_Unicode ) ' ' ) != aStringForward.lastIndexOf( ( sal_Unicode ) ' ' ) ) )
/// if user name and passwd and file server are forwarded
{
CPPUNIT_TEST( logonUser_user_pwd_server );
@@ -587,31 +587,31 @@ void MyTestPlugInImpl::initialize( CPPUNIT_NS::TestFactoryRegistry *,
t_print("#\n#Retrived system information is below:\n");
t_print("Computer Name: ");
if ( strComputerName == aNullURL )
if ( strComputerName == aNullUrl )
t_print("Not retrived\n" );
else
printUString( strComputerName );
t_print("Current User Name: ");
if ( strUserName == aNullURL )
if ( strUserName == aNullUrl )
t_print("Not retrived\n" );
else
printUString( strUserName );
t_print("Current User Home Directory:");
if ( strHomeDirectory == aNullURL )
if ( strHomeDirectory == aNullUrl )
t_print("Not retrived\n" );
else
printUString( strHomeDirectory );
t_print("Current Config Directory: ");
if ( strConfigDirectory == aNullURL )
if ( strConfigDirectory == aNullUrl )
t_print("Not retrived\n" );
else
printUString( strConfigDirectory );
t_print("Current UserID: ");
if ( strUserID == aNullURL )
if ( strUserID == aNullUrl )
t_print("Not retrived\n" );
else
printUString( strUserID );
@@ -624,7 +624,7 @@ void MyTestPlugInImpl::initialize( CPPUNIT_NS::TestFactoryRegistry *,
/// get and display forwarded text if available.
aStringForward = ::rtl::OUString::createFromAscii( parameters.getCommandLine().c_str() );
if ( !aStringForward.equals( aNullURL ) && aStringForward.indexOf( (sal_Unicode)' ' ) != -1 )
if ( !aStringForward.equals( aNullUrl ) && aStringForward.indexOf( (sal_Unicode)' ' ) != -1 )
{
sal_Int32 nFirstSpacePoint = aStringForward.indexOf( (sal_Unicode)' ' );;
sal_Int32 nLastSpacePoint = aStringForward.lastIndexOf( (sal_Unicode)' ' );;

View File

@@ -63,11 +63,15 @@ const char pTestString[17] = "Sun Microsystems";
//------------------------------------------------------------------------
// condition names
//------------------------------------------------------------------------
OSLTEST_DECLARE_USTRING( NullURL, "" );
::rtl::OUString aLogonUser( aNullURL ), aLogonPasswd( aNullURL ), aFileServer( aNullURL ), aStringForward( aNullURL );
::rtl::OUString strUserName( aNullURL ) , strComputerName( aNullURL ) , strHomeDirectory( aNullURL );
::rtl::OUString strConfigDirectory( aNullURL ), strUserID( aNullURL );
// Intentionally different from the aNullURL in osl_File_Const.h to avoid
// duplicate symbols as all the unit tests here get linked together for iOS...
OSLTEST_DECLARE_USTRING( NullUrl, "" );
::rtl::OUString aLogonUser( aNullUrl ), aLogonPasswd( aNullUrl ), aFileServer( aNullUrl ), aStringForward( aNullUrl );
::rtl::OUString strUserName( aNullUrl ) , strComputerName( aNullUrl ) , strHomeDirectory( aNullUrl );
::rtl::OUString strConfigDirectory( aNullUrl ), strUserID( aNullUrl );
sal_Bool isAdmin = sal_False;

View File

@@ -35,7 +35,9 @@ ENABLE_EXCEPTIONS=TRUE
.INCLUDE : settings.mk
.IF "$(CROSS_COMPILING)"!="YES"
.IF "$(OS)" == "IOS"
CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
.ENDIF
CFLAGS+= $(LFS_CFLAGS)
CXXFLAGS+= $(LFS_CFLAGS)
@@ -56,8 +58,6 @@ SHL1VERSIONMAP= $(PRJ)$/qa$/export.map
# do this here, so we get right dependencies
# SLOFILES=$(SHL1OBJS)
.ENDIF
# --- Targets ------------------------------------------------------
.INCLUDE : target.mk

View File

@@ -37,7 +37,9 @@ ENABLE_EXCEPTIONS=TRUE
.INCLUDE : settings.mk
.IF "$(CROSS_COMPILING)"!="YES"
.IF "$(OS)" == "IOS"
CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
.ENDIF
CFLAGS+= $(LFS_CFLAGS)
CXXFLAGS+= $(LFS_CFLAGS)
@@ -65,8 +67,6 @@ SHL1VERSIONMAP= $(PRJ)$/qa$/export.map
# do this here, so we get right dependencies
# SLOFILES=$(SHL1OBJS)
.ENDIF
# --- Targets ------------------------------------------------------
.INCLUDE : target.mk

View File

@@ -35,7 +35,9 @@ ENABLE_EXCEPTIONS=TRUE
.INCLUDE : settings.mk
.IF "$(CROSS_COMPILING)"!="YES"
.IF "$(OS)" == "IOS"
CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
.ENDIF
CFLAGS+= $(LFS_CFLAGS)
CXXFLAGS+= $(LFS_CFLAGS)
@@ -63,8 +65,6 @@ SHL1VERSIONMAP= $(PRJ)$/qa$/export.map
# do this here, so we get right dependencies
# SLOFILES=$(SHL1OBJS)
.ENDIF
# --- Targets ------------------------------------------------------
.INCLUDE : target.mk

View File

@@ -35,7 +35,9 @@ ENABLE_EXCEPTIONS=TRUE
.INCLUDE : settings.mk
.IF "$(CROSS_COMPILING)"!="YES"
.IF "$(OS)" == "IOS"
CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
.ENDIF
CFLAGS+= $(LFS_CFLAGS)
CXXFLAGS+= $(LFS_CFLAGS)
@@ -66,8 +68,6 @@ SHL1VERSIONMAP = $(PRJ)$/qa$/export.map
SLOFILES=$(SHL1OBJS)
.ENDIF
# --- Targets ------------------------------------------------------
.INCLUDE : target.mk

View File

@@ -35,7 +35,9 @@ ENABLE_EXCEPTIONS=TRUE
.INCLUDE : settings.mk
.IF "$(CROSS_COMPILING)"!="YES"
.IF "$(OS)" == "IOS"
CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
.ENDIF
CFLAGS+= $(LFS_CFLAGS)
CXXFLAGS+= $(LFS_CFLAGS)
@@ -64,8 +66,6 @@ SHL1VERSIONMAP= $(PRJ)$/qa$/export.map
# do this here, so we get right dependencies
# SLOFILES=$(SHL1OBJS)
.ENDIF
# --- Targets ------------------------------------------------------
.INCLUDE : target.mk

View File

@@ -34,7 +34,9 @@ ENABLE_EXCEPTIONS := TRUE
.INCLUDE: settings.mk
.IF "$(CROSS_COMPILING)"!="YES"
.IF "$(OS)" == "IOS"
CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
.ENDIF
CFLAGS+= $(LFS_CFLAGS)
CXXFLAGS+= $(LFS_CFLAGS)
@@ -51,7 +53,5 @@ SHL1STDLIBS := $(SALLIB) $(CPPUNITLIB)
SHL1VERSIONMAP := $(PRJ)$/qa$/export.map
DEF1NAME := $(SHL1TARGET)
.ENDIF
.INCLUDE: target.mk
.INCLUDE: $(PRJ)$/qa$/cppunit_local.mk

View File

@@ -34,7 +34,9 @@ ENABLE_EXCEPTIONS := TRUE
.INCLUDE: settings.mk
.IF "$(CROSS_COMPILING)"!="YES"
.IF "$(OS)" == "IOS"
CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
.ENDIF
CFLAGS+= $(LFS_CFLAGS)
CXXFLAGS+= $(LFS_CFLAGS)
@@ -52,7 +54,5 @@ SHL1STDLIBS := $(SALLIB) $(CPPUNITLIB)
SHL1VERSIONMAP := $(PRJ)$/qa$/export.map
DEF1NAME := $(SHL1TARGET)
.ENDIF
.INCLUDE: target.mk
.INCLUDE: $(PRJ)$/qa$/cppunit_local.mk

View File

@@ -33,7 +33,9 @@ ENABLE_EXCEPTIONS := TRUE
.INCLUDE: settings.mk
.IF "$(CROSS_COMPILING)"!="YES"
.IF "$(OS)" == "IOS"
CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
.ENDIF
SHL1TARGET = $(TARGET)_types
SHL1OBJS = $(SLO)$/test_types.obj
@@ -44,7 +46,5 @@ DEF1NAME = $(SHL1TARGET)
SLOFILES = $(SHL1OBJS)
.ENDIF
.INCLUDE: target.mk
.INCLUDE: $(PRJ)$/qa$/cppunit_local.mk