diff options
Diffstat (limited to 'reportdesign/qa/complex/reportdesign')
-rw-r--r-- | reportdesign/qa/complex/reportdesign/FileURL.java | 62 | ||||
-rw-r--r-- | reportdesign/qa/complex/reportdesign/ReportDesignerTest.java | 584 | ||||
-rw-r--r-- | reportdesign/qa/complex/reportdesign/TestDocument.java | 41 | ||||
-rwxr-xr-x | reportdesign/qa/complex/reportdesign/makefile.mk | 62 | ||||
-rw-r--r-- | reportdesign/qa/complex/reportdesign/mysql-connector-exists.pl | 9 | ||||
-rwxr-xr-x | reportdesign/qa/complex/reportdesign/runner.props | 22 | ||||
-rwxr-xr-x | reportdesign/qa/complex/reportdesign/test_documents/RPTCalcTests.odb | bin | 0 -> 6715 bytes | |||
-rwxr-xr-x | reportdesign/qa/complex/reportdesign/test_documents/RPTWriterTests.odb | bin | 0 -> 5762 bytes |
8 files changed, 780 insertions, 0 deletions
diff --git a/reportdesign/qa/complex/reportdesign/FileURL.java b/reportdesign/qa/complex/reportdesign/FileURL.java new file mode 100644 index 000000000000..9d2cdb89bd0e --- /dev/null +++ b/reportdesign/qa/complex/reportdesign/FileURL.java @@ -0,0 +1,62 @@ +/* + * ************************************************************************ + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + * ************************************************************************ + */ + +package complex.reportdesign; + +import java.io.File; +import java.net.URI; +import java.net.URISyntaxException; + +/** + * + * @author ll93751 + */ +public class FileURL +{ + String m_sFileURL; + + public FileURL(String _sFileURL) + { + m_sFileURL = _sFileURL; + } + public boolean exists() + { + try + { + final URI aURI = new URI(m_sFileURL); + final File aFile = new File(aURI); + return aFile.exists(); + } + catch (URISyntaxException ex) + { + System.out.println("Error: URI is wrong. '" + m_sFileURL + "': " + ex.getMessage()); + } + return false; + } +} diff --git a/reportdesign/qa/complex/reportdesign/ReportDesignerTest.java b/reportdesign/qa/complex/reportdesign/ReportDesignerTest.java new file mode 100644 index 000000000000..6dfb6f719daf --- /dev/null +++ b/reportdesign/qa/complex/reportdesign/ReportDesignerTest.java @@ -0,0 +1,584 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +package complex.reportdesign; + +import java.io.File; +import java.util.ArrayList; + +import com.sun.star.beans.PropertyValue; +import com.sun.star.beans.XPropertySet; +import com.sun.star.container.XNameAccess; +import com.sun.star.frame.XComponentLoader; +import com.sun.star.frame.XDesktop; +import com.sun.star.frame.XModel; +import com.sun.star.frame.XStorable; +import com.sun.star.lang.XComponent; +import com.sun.star.lang.XMultiServiceFactory; +import com.sun.star.sdb.XDocumentDataSource; +import com.sun.star.sdb.XOfficeDatabaseDocument; +import com.sun.star.sdb.XReportDocumentsSupplier; +import com.sun.star.sdb.application.XDatabaseDocumentUI; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.uno.XInterface; +import com.sun.star.util.XCloseable; + +// import complexlib.ComplexTestCase; +// import util.utils; +import helper.OfficeProvider; +import helper.URLHelper; +// import helper.OfficeWatcher; + +import convwatch.DB; + +import org.junit.After; +import org.junit.AfterClass; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; +import org.openoffice.test.OfficeConnection; +import static org.junit.Assert.*; + +class PropertySetHelper +{ + XPropertySet m_xPropertySet; + public PropertySetHelper(Object _aObj) + { + m_xPropertySet = UnoRuntime.queryInterface(XPropertySet.class, _aObj); + } + + /** + get a property and don't convert it + @param _sName the string name of the property + @return the object value of the property without any conversion + */ + public Object getPropertyValueAsObject(String _sName) + { + Object aObject = null; + + if (m_xPropertySet != null) + { + try + { + aObject = m_xPropertySet.getPropertyValue(_sName); + } + catch (com.sun.star.beans.UnknownPropertyException e) + { + System.out.println("ERROR: UnknownPropertyException caught. '" + _sName + "'"); + System.out.println("Message: " + e.getMessage()); + } + catch (com.sun.star.lang.WrappedTargetException e) + { + System.out.println("ERROR: WrappedTargetException caught."); + System.out.println("Message: " + e.getMessage()); + } + } + return aObject; + } +} + +class PropertyHelper +{ + /** + Create a PropertyValue[] from a ArrayList + @param _aArrayList + @return a PropertyValue[] + */ + public static PropertyValue[] createPropertyValueArrayFormArrayList(ArrayList _aPropertyList) + { + // copy the whole PropertyValue List to an PropertyValue Array + PropertyValue[] aSaveProperties = null; + + if (_aPropertyList == null) + { + aSaveProperties = new PropertyValue[0]; + } + else + { + if (_aPropertyList.size() > 0) + { + aSaveProperties = new PropertyValue[_aPropertyList.size()]; + for (int i = 0;i<_aPropertyList.size(); i++) + { + aSaveProperties[i] = (PropertyValue) _aPropertyList.get(i); + } + } + else + { + aSaveProperties = new PropertyValue[0]; + } + } + return aSaveProperties; + } +} + +public class ReportDesignerTest +{ + + String mTestDocumentPath; + +// public String[] getTestMethodNames() +// { +// return new String[] {"firsttest"}; +// } + + @Before public void before() + { + System.out.println("before"); + // String tempdir = System.getProperty("java.io.tmpdir"); + // + int dummy = 0; + // m_xXMultiServiceFactory = getMSF(); + } + + @After public void after() + { + System.out.println("after"); + } + +// private void checkIfOfficeExists(String _sOfficePathWithTrash) +// { +// String sOfficePath = ""; +// int nIndex = _sOfficePathWithTrash.indexOf("soffice.exe"); +// if (nIndex > 0) +// { +// sOfficePath = _sOfficePathWithTrash.substring(0, nIndex + 11); +// } +// else +// { +// nIndex = _sOfficePathWithTrash.indexOf("soffice"); +// if (nIndex > 0) +// { +// sOfficePath = _sOfficePathWithTrash.substring(0, nIndex + 7); +// } +// } +// +// System.out.println(sOfficePath); +// File sOffice = new File(sOfficePath); +// if (! sOffice.exists()) +// { +// System.out.println("ERROR: There exists no office installation at given path: '" + sOfficePath + "'"); +// System.exit(0); +// } +// } + + + private XDesktop m_xDesktop = null; + public XDesktop getXDesktop() + { + + if (m_xDesktop == null) + { + try + { + XInterface xInterface = (XInterface) getMSF().createInstance( "com.sun.star.frame.Desktop" ); + m_xDesktop = UnoRuntime.queryInterface(XDesktop.class, xInterface); + assertNotNull("Can't get XDesktop", m_xDesktop); + } + catch (com.sun.star.uno.Exception e) + { + System.out.println("ERROR: uno.Exception caught"); + System.out.println("Message: " + e.getMessage()); + } + } + return m_xDesktop; + } + + private void showElements(XNameAccess _xNameAccess) + { + if (_xNameAccess != null) + { + String[] sElementNames = _xNameAccess.getElementNames(); + for(int i=0;i<sElementNames.length; i++) + { + System.out.println("Value: [" + i + "] := " + sElementNames[i]); + } + } + else + { + System.out.println("Warning: Given object is null."); + } + } + + + private OfficeProvider m_aProvider = null; +// private void startOffice() +// { +// // int tempTime = param.getInt("SingleTimeOut"); +// param.put("TimeOut", new Integer(300000)); +// System.out.println("TimeOut: " + param.getInt("TimeOut")); +// System.out.println("ThreadTimeOut: " + param.getInt("ThreadTimeOut")); +// +// // OfficeProvider aProvider = null; +// m_aProvider = new OfficeProvider(); +// m_xXMultiServiceFactory = (XMultiServiceFactory) m_aProvider.getManager(param); +// param.put("ServiceFactory", m_xXMultiServiceFactory); +// } +// +// private void stopOffice() +// { +// if (m_aProvider != null) +// { +// m_aProvider.closeExistingOffice(param, true); +// m_aProvider = null; +// } +// } + + private String m_sMailAddress = null; + private String m_sUPDMinor; + private String m_sCWS_WORK_STAMP; + + private static final int WRITER = 1; + private static final int CALC = 2; + + @Test public void firsttest() + { + // convwatch.GlobalLogWriter.set(log); + + // -------------------- preconditions, try to find an office -------------------- + +// String sAppExecutionCommand = (String) param.get("AppExecutionCommand"); + + String sUser = System.getProperty("user.name"); + System.out.println("user.name='" + sUser + "'"); + + String sVCSID = System.getProperty("VCSID"); + System.out.println("VCSID='" + sVCSID + "'"); + m_sMailAddress = sVCSID + "@openoffice.org"; + System.out.println("Assumed mail address: " + m_sMailAddress); + + m_sUPDMinor = System.getProperty("UPDMINOR"); + m_sCWS_WORK_STAMP = System.getProperty("CWS_WORK_STAMP"); + System.out.println("Current CWS: " + m_sCWS_WORK_STAMP); + System.out.println("Current MWS: " + m_sUPDMinor); + +// sAppExecutionCommand = sAppExecutionCommand.replaceAll( "\\$\\{USERNAME\\}", sUser); +// System.out.println("sAppExecutionCommand='" + sAppExecutionCommand + "'"); +// +// checkIfOfficeExists(sAppExecutionCommand); +// param.put("AppExecutionCommand", new String(sAppExecutionCommand)); + + // --------------------------- Start the given Office --------------------------- + +// startOffice(); + + // ------------------------------ Start a test run ------------------------------ + +// String sCurrentDirectory = System.getProperty("user.dir"); +// System.out.println("Current Dir: " + sCurrentDirectory); +// + String sWriterDocument = TestDocument.getUrl("RPTWriterTests.odb"); + startTestForFile(sWriterDocument, WRITER); + + String sCalcDocument = TestDocument.getUrl("RPTCalcTests.odb"); + startTestForFile(sCalcDocument, CALC); +// catch (AssureException e) +// { +// stopOffice(); +// throw new AssureException(e.getMessage()); +// } +// + // ------------------------------ Office shutdown ------------------------------ +// stopOffice(); + } + +// ----------------------------------------------------------------------------- + private void startTestForFile(String _sDocument, int _nType) + { + FileURL aFileURL = new FileURL(_sDocument); + assertTrue("Test File doesn't '" + _sDocument + "'exist.", aFileURL.exists()); + + String sFileURL = _sDocument; // URLHelper.getFileURLFromSystemPath(_sDocument); + System.out.println("File URL: " + sFileURL); + + XComponent xDocComponent = loadComponent(sFileURL, getXDesktop(), null); + System.out.println("Load done"); + assertNotNull("Can't load document ", xDocComponent); + + + try + { + XInterface x = (XInterface)getMSF().createInstance("com.sun.star.sdb.DatabaseContext"); + assertNotNull("can't create instance of com.sun.star.sdb.DatabaseContext", x); + System.out.println("createInstance com.sun.star.sdb.DatabaseContext done"); + + XNameAccess xNameAccess = UnoRuntime.queryInterface(XNameAccess.class, x); + showElements(xNameAccess); + Object aObj = xNameAccess.getByName(sFileURL); + + XDocumentDataSource xDataSource = UnoRuntime.queryInterface(XDocumentDataSource.class, aObj); + XOfficeDatabaseDocument xOfficeDBDoc = xDataSource.getDatabaseDocument(); + + assertNotNull("can't access DatabaseDocument", xOfficeDBDoc); + + XModel xDBSource = UnoRuntime.queryInterface(XModel.class, xOfficeDBDoc); + Object aController = xDBSource.getCurrentController(); + assertNotNull("Controller of xOfficeDatabaseDocument is empty!", aController); + + XDatabaseDocumentUI aDBDocUI = UnoRuntime.queryInterface(XDatabaseDocumentUI.class, aController); + /* boolean isConnect = */ +// TODO: throws an exception in DEV300m78 + aDBDocUI.connect(); + Object aActiveConnectionObj = aDBDocUI.getActiveConnection(); + assertNotNull("ActiveConnection is empty", aActiveConnectionObj); + + XReportDocumentsSupplier xSupplier = UnoRuntime.queryInterface(XReportDocumentsSupplier.class, xOfficeDBDoc); + xNameAccess = xSupplier.getReportDocuments(); + assertNotNull("xOfficeDatabaseDocument returns no Report Document", xNameAccess); + + showElements(xNameAccess); + + ArrayList<PropertyValue> aPropertyList = new ArrayList<PropertyValue>(); + + PropertyValue aActiveConnection = new PropertyValue(); + aActiveConnection.Name = "ActiveConnection"; + aActiveConnection.Value = aActiveConnectionObj; + aPropertyList.add(aActiveConnection); + + loadAndStoreReports(xNameAccess, aPropertyList, _nType); + createDBEntry(_nType); + } + catch(com.sun.star.uno.Exception e) + { + fail("ERROR: Exception caught" + e.getMessage()); + } + + // Close the document + closeComponent(xDocComponent); + } + + private String getDocumentPoolName(int _nType) + { + return getFileFormat(_nType); + } + +// ----------------------------------------------------------------------------- + private void createDBEntry(int _nType) + { + // try to connect the database + String sDBConnection = ""; // (String)param.get( convwatch.PropertyName.DB_CONNECTION_STRING ); + System.out.println("DBConnection: " + sDBConnection); + DB.init(sDBConnection); + String sDestinationVersion = m_sCWS_WORK_STAMP; + if (sDestinationVersion.length() == 0) + { + sDestinationVersion = m_sUPDMinor; + } + String sDestinationName = ""; + String sDestinationCreatorType = ""; + String sDocumentPoolDir = getOutputPath(_nType); + String sDocumentPoolName = getDocumentPoolName(_nType); + String sSpecial = ""; + + String sFixRefSubDirectory = "ReportDesign_qa_complex_" + getFileFormat(_nType); +// DB.insertinto_documentcompare(sFixRefSubDirectory, "", "fixref", +// sDestinationVersion, sDestinationName, sDestinationCreatorType, +// sDocumentPoolDir, sDocumentPoolName, m_sMailAddress, +// sSpecial); + } + + private void loadAndStoreReports(XNameAccess _xNameAccess, ArrayList _aPropertyList, int _nType) + { + if (_xNameAccess != null) + { + String[] sElementNames = _xNameAccess.getElementNames(); + for(int i=0;i<sElementNames.length; i++) + { + String sReportName = sElementNames[i]; + XComponent xDoc = loadComponent(sReportName, _xNameAccess, _aPropertyList); + // print? or store? + storeComponent(sReportName, xDoc, _nType); + closeComponent(xDoc); + } + } + } + + private String getFormatExtension(int _nType) + { + String sExtension; + switch(_nType) + { + case WRITER: + sExtension = ".odt"; + break; + case CALC: + sExtension = ".ods"; + break; + default: + sExtension = ".UNKNOWN"; + } + return sExtension; + } + private String getFileFormat(int _nType) + { + String sFileType; + switch(_nType) + { + case WRITER: + sFileType = "writer8"; + break; + case CALC: + sFileType = "calc8"; + break; + default: + sFileType = "UNKNOWN"; + } + return sFileType; + } + + private String getOutputPath(int _nType) + { + String sOutputPath = util.utils.getOfficeTemp/*Dir*/(getMSF());// (String)param.get( convwatch.PropertyName.DOC_COMPARATOR_OUTPUT_PATH ); + + if (!sOutputPath.endsWith("/") || // construct the output file name + !sOutputPath.endsWith("\\")) + { + sOutputPath += System.getProperty("file.separator"); + } + sOutputPath += "tmp_123"; + sOutputPath += System.getProperty("file.separator"); + + File aOutputFile = new File(sOutputPath); // create the directory of the given output path + aOutputFile.mkdirs(); + + return sOutputPath; + } + + /* + store given _xComponent under the given Name in DOC_COMPARATOR_INPUTPATH + */ + private void storeComponent(String _sName, Object _xComponent, int _nType) + { + String sOutputPath = getOutputPath(_nType); + + // add DocumentPoolName + sOutputPath += getDocumentPoolName(_nType); + sOutputPath += System.getProperty("file.separator"); + + File aOutputFile = new File(sOutputPath); // create the directory of the given output path + aOutputFile.mkdirs(); + + sOutputPath += _sName; + sOutputPath += getFormatExtension(_nType); + + String sOutputURL = URLHelper.getFileURLFromSystemPath(sOutputPath); + + ArrayList<PropertyValue> aPropertyList = new ArrayList<PropertyValue>(); // set some properties for storeAsURL + + PropertyValue aFileFormat = new PropertyValue(); + aFileFormat.Name = "FilterName"; + aFileFormat.Value = getFileFormat(_nType); + aPropertyList.add(aFileFormat); + + PropertyValue aOverwrite = new PropertyValue(); // always overwrite already exist files + aOverwrite.Name = "Overwrite"; + aOverwrite.Value = Boolean.TRUE; + aPropertyList.add(aOverwrite); + + // store the document in an other directory + XStorable aStorable = UnoRuntime.queryInterface(XStorable.class, _xComponent); + if (aStorable != null) + { + System.out.println("store document as URL: '" + sOutputURL + "'"); + try + { + aStorable.storeAsURL(sOutputURL, PropertyHelper.createPropertyValueArrayFormArrayList(aPropertyList)); + } + catch (com.sun.star.io.IOException e) + { + System.out.println("ERROR: Exception caught"); + System.out.println("Can't write document URL: '" + sOutputURL + "'"); + System.out.println("Message: " + e.getMessage()); + } + } + } + + private XComponent loadComponent(String _sName, Object _xComponent, ArrayList _aPropertyList) + { + XComponent xDocComponent = null; + XComponentLoader xComponentLoader = UnoRuntime.queryInterface(XComponentLoader.class, _xComponent); + + try + { + PropertyValue[] aLoadProperties = PropertyHelper.createPropertyValueArrayFormArrayList(_aPropertyList); + System.out.println("Load component: '" + _sName + "'"); + xDocComponent = xComponentLoader.loadComponentFromURL(_sName, "_blank", 0, aLoadProperties); + } + catch (com.sun.star.io.IOException e) + { + System.out.println("ERROR: Exception caught"); + System.out.println("Can't load document '" + _sName + "'"); + System.out.println("Message: " + e.getMessage()); + } + catch (com.sun.star.lang.IllegalArgumentException e) + { + System.out.println("ERROR: Exception caught"); + System.out.println("Illegal Arguments given to loadComponentFromURL."); + System.out.println("Message: " + e.getMessage()); + } + return xDocComponent; + } + + private void closeComponent(XComponent _xDoc) + { + // Close the document + XCloseable xCloseable = UnoRuntime.queryInterface(XCloseable.class, _xDoc); + try + { + xCloseable.close(true); + } + catch (com.sun.star.util.CloseVetoException e) + { + System.out.println("ERROR: CloseVetoException caught"); + System.out.println("CloseVetoException occured Can't close document."); + System.out.println("Message: " + e.getMessage()); + } + } + + + private XMultiServiceFactory getMSF() + { + final XMultiServiceFactory xMSF1 = UnoRuntime.queryInterface(XMultiServiceFactory.class, connection.getComponentContext().getServiceManager()); + return xMSF1; + } + + // setup and close connections + @BeforeClass public static void setUpConnection() throws Exception { + System.out.println("setUpConnection()"); + connection.setUp(); + } + + @AfterClass public static void tearDownConnection() + throws InterruptedException, com.sun.star.uno.Exception + { + System.out.println("tearDownConnection()"); + connection.tearDown(); + } + + private static final OfficeConnection connection = new OfficeConnection(); + +} diff --git a/reportdesign/qa/complex/reportdesign/TestDocument.java b/reportdesign/qa/complex/reportdesign/TestDocument.java new file mode 100644 index 000000000000..a6e294d4d3ec --- /dev/null +++ b/reportdesign/qa/complex/reportdesign/TestDocument.java @@ -0,0 +1,41 @@ +/************************************************************************* +* +* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +* +* Copyright 2000, 2010 Oracle and/or its affiliates. +* +* OpenOffice.org - a multi-platform office productivity suite +* +* This file is part of OpenOffice.org. +* +* OpenOffice.org is free software: you can redistribute it and/or modify +* it under the terms of the GNU Lesser General Public License version 3 +* only, as published by the Free Software Foundation. +* +* OpenOffice.org is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU Lesser General Public License version 3 for more details +* (a copy is included in the LICENSE file that accompanied this code). +* +* You should have received a copy of the GNU Lesser General Public License +* version 3 along with OpenOffice.org. If not, see +* <http://www.openoffice.org/license.html> +* for a copy of the LGPLv3 License. +* +************************************************************************/ + +package complex.reportdesign; + +import java.io.File; +import org.openoffice.test.OfficeFileUrl; + +final class TestDocument +{ + public static String getUrl(String name) + { + return OfficeFileUrl.getAbsolute(new File("test_documents", name)); + } + + private TestDocument() {} +} diff --git a/reportdesign/qa/complex/reportdesign/makefile.mk b/reportdesign/qa/complex/reportdesign/makefile.mk new file mode 100755 index 000000000000..4174eb02ce3a --- /dev/null +++ b/reportdesign/qa/complex/reportdesign/makefile.mk @@ -0,0 +1,62 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# <http://www.openoffice.org/license.html> +# for a copy of the LGPLv3 License. +# +#************************************************************************* + +.IF "$(OOO_SUBSEQUENT_TESTS)" == "" +nothing .PHONY: +.ELSE + +PRJ = ../../.. +PRJNAME = reportdesign +TARGET = qa_complex_reportdesign + +.IF "$(OOO_JUNIT_JAR)" != "" +PACKAGE = complex/reportdesign + +# here store only Files which contain a @Test +JAVATESTFILES = \ + ReportDesignerTest.java + +# put here all other files +JAVAFILES = $(JAVATESTFILES) \ + TestDocument.java \ + FileURL.java + +JARFILES = OOoRunner.jar ridl.jar test.jar unoil.jar +EXTRAJARFILES = $(OOO_JUNIT_JAR) + +# Sample how to debug +# JAVAIFLAGS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=9003,suspend=y + +.END + +.INCLUDE: settings.mk +.INCLUDE: target.mk +.INCLUDE: installationtest.mk + +ALLTAR : javatest + +.END diff --git a/reportdesign/qa/complex/reportdesign/mysql-connector-exists.pl b/reportdesign/qa/complex/reportdesign/mysql-connector-exists.pl new file mode 100644 index 000000000000..6eefe2bb0639 --- /dev/null +++ b/reportdesign/qa/complex/reportdesign/mysql-connector-exists.pl @@ -0,0 +1,9 @@ +eval 'exec perl -wS $0 ${1+\"$@\"}' + if 0; + +my $sMySQLConnector = $ARGV[0]; +if (! -e $sMySQLConnector) +{ + exit 1; +} +exit 0; diff --git a/reportdesign/qa/complex/reportdesign/runner.props b/reportdesign/qa/complex/reportdesign/runner.props new file mode 100755 index 000000000000..d894366ce006 --- /dev/null +++ b/reportdesign/qa/complex/reportdesign/runner.props @@ -0,0 +1,22 @@ +# where to store created documents +wntmsci.DOC_COMPARATOR_OUTPUT_PATH=\\\\so-gfxcmp-lin\\doc-pool\\reporttest +unxlngi.DOC_COMPARATOR_OUTPUT_PATH=/net/so-gfxcmp-lin/export/gfxcmp/document-pool/reporttest + +DB_CONNECTION_STRING=server:jakobus,db:jobs_convwatch,user:admin,passwd:admin + +# Set path to an existing office installation +wntmsci.AppExecutionCommand=C:\\home\\${USERNAME}\\staroffice8\\program\\soffice.exe -norestore -nocrashreport -accept=socket,host=localhost,port=8100;urp; +unxlngi.AppExecutionCommand=/opt/staroffice8/program/soffice -norestore -nocrashreport -accept=socket,host=localhost,port=8100;urp; + +# Set the 'Continue' Property to true, to leave out already done tests. +Continue=true + +TestBase=java_complex +TestJob=-o complex.ReportDesignerTest +DebugIsActive=true +ThreadTimeOut=400000 +SingleTimeOut=300000 + +# don't start office automatically +NoOffice=true + diff --git a/reportdesign/qa/complex/reportdesign/test_documents/RPTCalcTests.odb b/reportdesign/qa/complex/reportdesign/test_documents/RPTCalcTests.odb Binary files differnew file mode 100755 index 000000000000..0e91d633d4e7 --- /dev/null +++ b/reportdesign/qa/complex/reportdesign/test_documents/RPTCalcTests.odb diff --git a/reportdesign/qa/complex/reportdesign/test_documents/RPTWriterTests.odb b/reportdesign/qa/complex/reportdesign/test_documents/RPTWriterTests.odb Binary files differnew file mode 100755 index 000000000000..7099b1abf2b5 --- /dev/null +++ b/reportdesign/qa/complex/reportdesign/test_documents/RPTWriterTests.odb |