diff options
Diffstat (limited to 'framework/qa/complex/broken_document')
-rwxr-xr-x | framework/qa/complex/broken_document/LoadDocument.java | 75 | ||||
-rwxr-xr-x | framework/qa/complex/broken_document/TestDocument.java | 42 | ||||
-rwxr-xr-x | framework/qa/complex/broken_document/makefile.mk | 80 | ||||
-rwxr-xr-x | framework/qa/complex/broken_document/test_documents/dbf.dbf.emf (renamed from framework/qa/complex/broken_document/dbf.dbf.emf) | 0 |
4 files changed, 96 insertions, 101 deletions
diff --git a/framework/qa/complex/broken_document/LoadDocument.java b/framework/qa/complex/broken_document/LoadDocument.java index 5318b15bc1ea..f5d41c1e02b1 100755 --- a/framework/qa/complex/broken_document/LoadDocument.java +++ b/framework/qa/complex/broken_document/LoadDocument.java @@ -27,65 +27,74 @@ package complex.broken_document; import com.sun.star.beans.PropertyValue; -import com.sun.star.frame.FrameSearchFlag; +// import com.sun.star.frame.FrameSearchFlag; import com.sun.star.frame.XComponentLoader; import com.sun.star.frame.XFrame; import com.sun.star.lang.XMultiServiceFactory; import com.sun.star.uno.UnoRuntime; -import complexlib.ComplexTestCase; + + +// ---------- junit imports ----------------- +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.*; +// ------------------------------------------ /** * Check, if message boxes appear when the Office is in "headless" mode. Tests * bug i15809. This test uses the broken document dbf.dbf.emf. */ -public class LoadDocument extends ComplexTestCase { +public class LoadDocument { /** defect file to load **/ - private final String mFileName = "dbf.dbf.emf"; + // private final String mFileName = "dbf.dbf.emf"; /** * Get all test methods. * @return The test methods. */ - public String[] getTestMethodNames() { - return new String[]{"checkHeadlessState"}; - } +// public String[] getTestMethodNames() { +// return new String[]{"checkHeadlessState"}; +// } /** * Start Office with "-headless" parameter, then * load the broken document "dbf.dbf.emf", that brings a message box up in * the ui, see if the headless mode of SOffice changes. */ - public void checkHeadlessState() { - XMultiServiceFactory xMSF = (XMultiServiceFactory)param.getMSF(); + @Test public void checkHeadlessState() + { + XMultiServiceFactory xMSF = getMSF(); XFrame xDesktop = null; try { - xDesktop = (XFrame)UnoRuntime.queryInterface(XFrame.class, - xMSF.createInstance("com.sun.star.frame.Desktop")); + xDesktop = UnoRuntime.queryInterface(XFrame.class, xMSF.createInstance("com.sun.star.frame.Desktop")); } catch(com.sun.star.uno.Exception e) { - failed("Could not create a desktop instance."); + fail("Could not create a desktop instance."); } - XComponentLoader xDesktopLoader = (XComponentLoader) - UnoRuntime.queryInterface(XComponentLoader.class, xDesktop); + XComponentLoader xDesktopLoader = UnoRuntime.queryInterface(XComponentLoader.class, xDesktop); System.out.println("xDektopLoader is null: " + (xDesktopLoader == null)); PropertyValue[] val = new PropertyValue[0]; - String workingDir = (String)param.get("WorkingDir") + System.getProperty("file.separator") + mFileName; - System.out.println("Working dir: " + workingDir); - String fileUrl = util.utils.getFullURL(workingDir); + // String workingDir = (String)param.get("WorkingDir") + System.getProperty("file.separator") + mFileName; + // System.out.println("Working dir: " + workingDir); + String fileUrl = complex.broken_document.TestDocument.getUrl("dbf.dbf.emf"); System.out.println("File Url: " + fileUrl); try { xDesktopLoader.loadComponentFromURL(fileUrl, "_blank", 0, val); } catch(com.sun.star.io.IOException e) { - failed("Could not load document"); + fail("Could not load document"); } catch(com.sun.star.lang.IllegalArgumentException e) { - failed("Could not load document"); + fail("Could not load document"); } // try again: headless mode defect now? @@ -93,11 +102,35 @@ public class LoadDocument extends ComplexTestCase { xDesktopLoader.loadComponentFromURL(fileUrl, "_blank", 0, val); } catch(com.sun.star.io.IOException e) { - failed("Could not load document"); + fail("Could not load document"); } catch(com.sun.star.lang.IllegalArgumentException e) { - failed("Could not load document"); + fail("Could not load document"); } } + + + + 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/framework/qa/complex/broken_document/TestDocument.java b/framework/qa/complex/broken_document/TestDocument.java new file mode 100755 index 000000000000..47a5176734d5 --- /dev/null +++ b/framework/qa/complex/broken_document/TestDocument.java @@ -0,0 +1,42 @@ +/************************************************************************* +* +* 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.broken_document; + +import java.io.File; +import org.openoffice.test.OfficeFileUrl; +import org.openoffice.test.Argument; + +final class TestDocument +{ + public static String getUrl(String name) + { + return OfficeFileUrl.getAbsolute(new File(Argument.get("tdoc"), name)); + } + + private TestDocument() {} +} diff --git a/framework/qa/complex/broken_document/makefile.mk b/framework/qa/complex/broken_document/makefile.mk deleted file mode 100755 index c8f24a937159..000000000000 --- a/framework/qa/complex/broken_document/makefile.mk +++ /dev/null @@ -1,80 +0,0 @@ -#************************************************************************* -# -# 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. -# -#************************************************************************* - -PRJ = ..$/..$/.. -TARGET = CheckHeadlessState -PRJNAME = $(TARGET) -PACKAGE = complex$/broken_document - -# --- Settings ----------------------------------------------------- -.INCLUDE: settings.mk - - -#----- compile .java files ----------------------------------------- - -JARFILES = mysql.jar ridl.jar unoil.jar jurt.jar juh.jar java_uno.jar OOoRunner.jar -JAVAFILES = LoadDocument.java -JAVACLASSFILES = $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class) - -#----- make a jar from compiled files ------------------------------ - -MAXLINELENGTH = 100000 - -JARCLASSDIRS = $(PACKAGE) -JARTARGET = $(TARGET).jar -JARCOMPRESS = TRUE - -# --- Parameters for the test -------------------------------------- - -# start an office if the parameter is set for the makefile -.IF "$(OFFICE)" == "" -CT_APPEXECCOMMAND = -.ELSE -CT_APPEXECCOMMAND = -AppExecutionCommand "$(OFFICE)$/soffice -accept=socket,host=localhost,port=8100;urp;" -.ENDIF - -# test base is java complex -CT_TESTBASE = -TestBase java_complex - -# test looks something like the.full.package.TestName -CT_TEST = -o $(PACKAGE:s\$/\.\).$(JAVAFILES:b) - -# start the runner application -CT_APP = org.openoffice.Runner - -# the current directory for loading the document -CT_WORKDIR = -WorkingDir $(PWD) - -# --- Targets ------------------------------------------------------ - -.INCLUDE : target.mk - - -RUN: - +java -cp $(CLASSPATH) $(CT_APP) $(CT_APPEXECCOMMAND) $(CT_TESTBASE) $(CT_WORKDIR) $(CT_TEST) - -run: RUN diff --git a/framework/qa/complex/broken_document/dbf.dbf.emf b/framework/qa/complex/broken_document/test_documents/dbf.dbf.emf index 11e45e9df5d1..11e45e9df5d1 100755 --- a/framework/qa/complex/broken_document/dbf.dbf.emf +++ b/framework/qa/complex/broken_document/test_documents/dbf.dbf.emf |