summaryrefslogtreecommitdiff
path: root/dbaccess/qa
diff options
context:
space:
mode:
authorJens-Heiner Rechtien <hr@openoffice.org>2007-09-26 13:37:58 +0000
committerJens-Heiner Rechtien <hr@openoffice.org>2007-09-26 13:37:58 +0000
commit39be00152babd6a21b43b814a714fce8f155e703 (patch)
treec329c96369afa01e0315c3647ff9aa42b26a2819 /dbaccess/qa
parentc4b26524e184afa07def2620c6acf5b1bb9ef6e3 (diff)
INTEGRATION: CWS dba24a (1.1.2); FILE ADDED
2007/09/03 11:52:59 fs 1.1.2.2: close document when finished 2007/08/29 13:23:01 oj 1.1.2.1: #i69084# test for XStorable
Diffstat (limited to 'dbaccess/qa')
-rw-r--r--dbaccess/qa/complex/dbaccess/Storable.java120
1 files changed, 120 insertions, 0 deletions
diff --git a/dbaccess/qa/complex/dbaccess/Storable.java b/dbaccess/qa/complex/dbaccess/Storable.java
new file mode 100644
index 000000000000..e8cf00093f14
--- /dev/null
+++ b/dbaccess/qa/complex/dbaccess/Storable.java
@@ -0,0 +1,120 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: Storable.java,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: hr $ $Date: 2007-09-26 14:37:58 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+package complex.dbaccess;
+
+import com.sun.star.beans.XPropertySet;
+import com.sun.star.container.ElementExistException;
+import com.sun.star.container.XIndexAccess;
+import com.sun.star.container.XNameAccess;
+import com.sun.star.container.XNamed;
+import com.sun.star.lang.WrappedTargetException;
+import com.sun.star.lang.XMultiServiceFactory;
+import com.sun.star.sdb.XQueriesSupplier;
+import com.sun.star.sdb.XSingleSelectQueryComposer;
+import com.sun.star.sdbc.SQLException;
+import com.sun.star.sdbcx.XColumnsSupplier;
+import com.sun.star.uno.UnoRuntime;
+import com.sun.star.frame.XStorable;
+import com.sun.star.frame.FrameSearchFlag;
+import com.sun.star.beans.PropertyValue;
+import com.sun.star.lang.XComponent;
+import com.sun.star.frame.XComponentLoader;
+import com.sun.star.util.XCloseable;
+import connectivity.tools.*;
+
+public class Storable extends complexlib.ComplexTestCase {
+
+ HsqlDatabase m_database;
+
+ // --------------------------------------------------------------------------------------------------------
+ public String[] getTestMethodNames() {
+ return new String[]
+ {
+ "testStorable"
+ };
+ }
+
+ // --------------------------------------------------------------------------------------------------------
+ public String getTestObjectName() {
+ return "Storable";
+ }
+
+ // --------------------------------------------------------------------------------------------------------
+ private void createTestCase()
+ {
+ try
+ {
+ if ( m_database == null )
+ {
+ CRMDatabase database = new CRMDatabase( getFactory() );
+ m_database = database.getDatabase();
+ }
+ }
+ catch( Exception e )
+ {
+ System.err.println( "could not create the test case, error message:\n" + e.getMessage() );
+ e.printStackTrace( System.err );
+ assure( "failed to created the test case", false );
+ }
+ }
+
+ // --------------------------------------------------------------------------------------------------------
+ private XMultiServiceFactory getFactory()
+ {
+ return (XMultiServiceFactory)param.getMSF();
+ }
+
+ // --------------------------------------------------------------------------------------------------------
+ public void testStorable()
+ {
+ createTestCase();
+
+ try
+ {
+ Object object = getFactory().createInstance("com.sun.star.frame.Desktop");
+ XComponentLoader xComponentLoader = (XComponentLoader)UnoRuntime.queryInterface(XComponentLoader.class, object);
+ XComponent xComponent = xComponentLoader.loadComponentFromURL(m_database.getDocumentURL(), "_blank",FrameSearchFlag.ALL, new PropertyValue[0]);
+ m_database.close();
+ XStorable storable = (XStorable)UnoRuntime.queryInterface(XStorable.class,xComponent);
+ storable.store();
+ XCloseable close = (XCloseable)UnoRuntime.queryInterface(XCloseable.class,xComponent);
+ close.close(true);
+ }
+ catch ( Exception e )
+ {
+ assure( "caught an unexpected exception: " + e.getMessage(), false );
+ }
+ }
+}