summaryrefslogtreecommitdiff
path: root/framework/qa/complex/desktop/DesktopTerminate.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/qa/complex/desktop/DesktopTerminate.java')
-rwxr-xr-xframework/qa/complex/desktop/DesktopTerminate.java157
1 files changed, 97 insertions, 60 deletions
diff --git a/framework/qa/complex/desktop/DesktopTerminate.java b/framework/qa/complex/desktop/DesktopTerminate.java
index f63c2adef2..b5c0a73595 100755
--- a/framework/qa/complex/desktop/DesktopTerminate.java
+++ b/framework/qa/complex/desktop/DesktopTerminate.java
@@ -27,51 +27,46 @@
package complex.desktop;
-import com.sun.star.lang.XServiceInfo;
-import com.sun.star.lang.XInitialization;
-import com.sun.star.uno.Type;
-import com.sun.star.uno.Any;
-import com.sun.star.lang.XTypeProvider;
-import com.sun.star.lang.XSingleServiceFactory;
import com.sun.star.lang.XMultiServiceFactory;
-import com.sun.star.lang.XComponent;
import com.sun.star.frame.XDesktop;
-import com.sun.star.frame.XFramesSupplier;
-import com.sun.star.frame.XFrames;
-import com.sun.star.registry.XRegistryKey;
-import com.sun.star.comp.loader.FactoryHelper;
-import com.sun.star.container.XIndexAccess;
-import com.sun.star.beans.XPropertySet;
import com.sun.star.uno.UnoRuntime;
-import com.sun.star.uno.AnyConverter;
-import com.sun.star.frame.XComponentLoader;
-import com.sun.star.awt.Rectangle;
-import com.sun.star.util.XCloseable;
-import helper.ConfigurationRead;
-import complexlib.ComplexTestCase;
import helper.OfficeProvider;
//import complex.persistent_window_states.helper.DocumentHandle;
+// ---------- 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.*;
+// ------------------------------------------
+
/**
* Parameters:
* <ul>
* <li>NoOffice=yes - StarOffice is not started initially.</li>
* </ul>
*/
-public class DesktopTerminate extends ComplexTestCase {
+public class DesktopTerminate
+{
private XMultiServiceFactory xMSF;
- private OfficeProvider oProvider;
- private int iOfficeCloseTime = 0;
-
+ private int iOfficeCloseTime = 1000;
+
/**
* A frunction to tell the framework, which test functions are available.
* Right now, it's only 'checkPersistentWindowState'.
* @return All test methods.
*/
- public String[] getTestMethodNames() {
- return new String[]{"checkPersistentWindowState"};
- }
+// public String[] getTestMethodNames()
+// {
+// return new String[]
+// {
+// "checkPersistentWindowState"
+// };
+// }
/**
* Test if all available document types change the
@@ -94,65 +89,107 @@ public class DesktopTerminate extends ComplexTestCase {
* - close office
* - Test finished
*/
- public void checkPersistentWindowState()
+ @Test public void checkPersistentWindowState()
{
- try {
-
- log.println("Connect the first time.");
- log.println("AppExecCommand: " + (String)param.get("AppExecutionCommand"));
- log.println("ConnString: " + (String)param.get("ConnectionString"));
- oProvider = new OfficeProvider();
- iOfficeCloseTime = param.getInt("OfficeCloseTime");
- if ( iOfficeCloseTime == 0 ) {
- iOfficeCloseTime = 1000;
+ try
+ {
+
+ System.out.println("Connect the first time.");
+// System.out.println("AppExecCommand: " + (String) param.get("AppExecutionCommand"));
+// System.out.println("ConnString: " + (String) param.get("ConnectionString"));
+// oProvider = new OfficeProvider();
+// iOfficeCloseTime = param.getInt("OfficeCloseTime");
+// if (iOfficeCloseTime == 0)
+// {
+// iOfficeCloseTime = 1000;
+// }
+
+ if (!connect())
+ {
+ return;
+ }
+
+ if (!disconnect())
+ {
+ return;
}
-
- if (!connect()) return;
-
- if (!disconnect()) return;
}
- catch(Exception e) {
+ catch (Exception e)
+ {
e.printStackTrace();
}
}
- private boolean connect() {
- try {
- xMSF = (XMultiServiceFactory)oProvider.getManager(param);
- try {
+ private boolean connect()
+ {
+ try
+ {
+ xMSF = getMSF();
+ try
+ {
Thread.sleep(10000);
}
- catch(java.lang.InterruptedException e) {}
+ catch (java.lang.InterruptedException e)
+ {
+ }
}
- catch (java.lang.Exception e) {
- log.println(e.getClass().getName());
- log.println("Message: " + e.getMessage());
- failed("Cannot connect the Office.");
+ catch (java.lang.Exception e)
+ {
+ System.out.println(e.getClass().getName());
+ System.out.println("Message: " + e.getMessage());
+ fail("Cannot connect the Office.");
return false;
}
return true;
}
- private boolean disconnect() {
- try {
+ private boolean disconnect()
+ {
+ try
+ {
XDesktop desk = null;
- desk = (XDesktop) UnoRuntime.queryInterface(
- XDesktop.class, xMSF.createInstance(
- "com.sun.star.frame.Desktop"));
+ desk = UnoRuntime.queryInterface(XDesktop.class, xMSF.createInstance("com.sun.star.frame.Desktop"));
desk.terminate();
- log.println("Waiting " + iOfficeCloseTime + " milliseconds for the Office to close down");
- try {
+ System.out.println("Waiting " + iOfficeCloseTime + " milliseconds for the Office to close down");
+ try
+ {
Thread.sleep(iOfficeCloseTime);
}
- catch(java.lang.InterruptedException e) {}
+ catch (java.lang.InterruptedException e)
+ {
+ }
xMSF = null;
}
- catch (java.lang.Exception e) {
+ catch (java.lang.Exception e)
+ {
e.printStackTrace();
- failed("Cannot dispose the Office.");
+ fail("Cannot dispose the Office.");
return false;
}
return true;
}
+
+ 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()");
+ // don't do a tearDown here, desktop is already terminated.
+ // connection.tearDown();
+ }
+
+ private static final OfficeConnection connection = new OfficeConnection();
+
}