summaryrefslogtreecommitdiff
path: root/scripting
diff options
context:
space:
mode:
authorTomas O'Connor <toconnor@openoffice.org>2003-03-25 16:55:44 +0000
committerTomas O'Connor <toconnor@openoffice.org>2003-03-25 16:55:44 +0000
commit6d2505eb901c07159107c97ec66830bbec840121 (patch)
treed3a9ece879902dc8ab8a83ea03a59fa50f53a7e3 /scripting
parent93b11bc7ec94ff0bc3b4a2e1fb974cf1165b6a07 (diff)
Add test for getAllImplementations method of XScriptInfoAccess interface
Diffstat (limited to 'scripting')
-rw-r--r--scripting/workben/data/objdsc/drafts.com.sun.star.script.framework.storage.ScriptStorage.csv1
-rw-r--r--scripting/workben/data/testdata/ScriptStorage.csv1
-rw-r--r--scripting/workben/ifc/scripting/ScriptingUtils.java40
-rw-r--r--scripting/workben/ifc/scripting/_XScriptInfoAccess.java61
4 files changed, 75 insertions, 28 deletions
diff --git a/scripting/workben/data/objdsc/drafts.com.sun.star.script.framework.storage.ScriptStorage.csv b/scripting/workben/data/objdsc/drafts.com.sun.star.script.framework.storage.ScriptStorage.csv
index e55fbfc80dd1..69628462fedb 100644
--- a/scripting/workben/data/objdsc/drafts.com.sun.star.script.framework.storage.ScriptStorage.csv
+++ b/scripting/workben/data/objdsc/drafts.com.sun.star.script.framework.storage.ScriptStorage.csv
@@ -1,3 +1,4 @@
"ScriptStorage";"drafts::com::sun::star::script::framework::storage::XScriptInfoAccess";"getScriptLogicalNames()"
"ScriptStorage";"drafts::com::sun::star::script::framework::storage::XScriptInfoAccess";"getImplementations()"
+"ScriptStorage";"drafts::com::sun::star::script::framework::storage::XScriptInfoAccess";"getAllImplementations()"
"ScriptStorage";"drafts::com::sun::star::script::framework::storage::XScriptStorageRefresh";"refresh()"
diff --git a/scripting/workben/data/testdata/ScriptStorage.csv b/scripting/workben/data/testdata/ScriptStorage.csv
index fadec6d23537..a5b4589e6f64 100644
--- a/scripting/workben/data/testdata/ScriptStorage.csv
+++ b/scripting/workben/data/testdata/ScriptStorage.csv
@@ -1,3 +1,4 @@
_getScriptLogicalNames;description=Try to get logical names;expected=MemoryUtils.MemUsage
_getImplementations;description=Try to get a valid implementation;logicalname=script://MemoryUtils.MemUsage?location=document;expected=MemoryUtils.MemUsage
+_getAllImplementations;description=Try to get all valid implementations;location=doc_with_beanshell_scripts.sxw;expected=returns-Integer,returns-String,returns-Frame
_refresh;description=Try calling refresh;expected=success
diff --git a/scripting/workben/ifc/scripting/ScriptingUtils.java b/scripting/workben/ifc/scripting/ScriptingUtils.java
index 81104d66cbc8..4895de137073 100644
--- a/scripting/workben/ifc/scripting/ScriptingUtils.java
+++ b/scripting/workben/ifc/scripting/ScriptingUtils.java
@@ -2,9 +2,9 @@
*
* $RCSfile: ScriptingUtils.java,v $
*
- * $Revision: 1.1 $
+ * $Revision: 1.2 $
*
- * last change:$Date: 2002-11-20 14:11:22 $
+ * last change:$Date: 2003-03-25 17:55:43 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -75,28 +75,6 @@ public class ScriptingUtils {
private XScriptStorageManager storageManager;
private static ScriptingUtils utils;
- public static final String USER_LOGICAL_NAME =
- "script://user.jsuite.test";
- public static final String SHARE_LOGICAL_NAME =
- "script://share.jsuite.test";
- public static final String DOC_LOGICAL_NAME =
- "script://doc.jsuite.testMethod";
-
- public static final String SCRIPT_IN_CLASSFILE_DOC_NAME =
- "script_in_class_file.sxw";
-
- public static final String SCRIPT_IN_JARFILE_DOC_NAME =
- "script_in_jar_file.sxw";
-
- public static final String DOC_WITH_ONE_SCRIPT =
- "doc_with_one_script.sxw";
-
- public static final String DOC_WITH_TWO_SCRIPTS =
- "doc_with_two_scripts.sxw";
-
- public static final String XSCRIPTCONTEXT_TEST_DOCUMENT =
- "xscriptcontext_test_document.sxw";
-
private ScriptingUtils() {
}
@@ -116,9 +94,21 @@ public class ScriptingUtils {
public static void cleanShareDir() {
}
- public int getScriptStorageId(XMultiServiceFactory xMSF, String uri) {
+ public Object getScriptStorage(XMultiServiceFactory xMSF, String location) {
+ int id = getStorageId(xMSF, location);
+ return storageManager.getScriptStorage(id);
+ }
+
+ public int getStorageId(XMultiServiceFactory xMSF, String location) {
+
+ if (location.equals("share"))
+ return 0;
+
+ if (location.equals("user"))
+ return 1;
XSimpleFileAccess access = null;
+ String uri = util.utils.getFullTestURL(location);
if (storageManager == null) {
try {
diff --git a/scripting/workben/ifc/scripting/_XScriptInfoAccess.java b/scripting/workben/ifc/scripting/_XScriptInfoAccess.java
index e667ed519a4f..8f6499fd1a04 100644
--- a/scripting/workben/ifc/scripting/_XScriptInfoAccess.java
+++ b/scripting/workben/ifc/scripting/_XScriptInfoAccess.java
@@ -2,9 +2,9 @@
*
* $RCSfile: _XScriptInfoAccess.java,v $
*
- * $Revision: 1.3 $
+ * $Revision: 1.4 $
*
- * last change:$Date: 2003-03-25 16:55:04 $
+ * last change:$Date: 2003-03-25 17:55:44 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -61,7 +61,8 @@
package ifc.script.framework.storage;
-import drafts.com.sun.star.script.framework.storage.XScriptStorageManager;
+import ifc.script.framework.ScriptingUtils;
+
import drafts.com.sun.star.script.framework.storage.XScriptInfoAccess;
import drafts.com.sun.star.script.framework.storage.XScriptInfo;
@@ -204,4 +205,58 @@ public class _XScriptInfoAccess extends MultiMethodTest {
else
return false;
}
+
+ public void _getAllImplementations() {
+ boolean result = true;
+
+ Collection c =
+ (Collection) tEnv.getObjRelation("_getAllImplementations");
+
+ Iterator tests;
+
+ if (c != null) {
+ tests = c.iterator();
+
+ while (tests.hasNext()) {
+ result &= runGetAllImplementationsTest((Parameters)tests.next());
+ }
+ }
+ else {
+ result = false;
+ }
+
+ tRes.tested("getAllImplementations()", result);
+ }
+
+ private boolean runGetAllImplementationsTest(Parameters testdata) {
+ String description = testdata.get("description");
+ String location = testdata.get("location");
+ String expected = testdata.get("expected");
+ String output = "";
+
+ log.println(testdata.get("description"));
+
+ Object obj = ScriptingUtils.getDefault().getScriptStorage(
+ tParam.getMSF(), location);
+
+ XScriptInfoAccess access = (XScriptInfoAccess)
+ UnoRuntime.queryInterface(XScriptInfoAccess.class, obj);
+
+ XScriptInfo[] impls = access.getAllImplementations();
+
+ if (impls == null || impls.length == 0) {
+ output = "empty";
+ }
+ else {
+ for (int i = 0; i < impls.length - 1; i++)
+ output += impls[i].getLogicalName() + ",";
+ output += impls[impls.length - 1].getLogicalName();
+ }
+
+ log.println("expected: " + expected + ", output: " + output);
+ if (output.equals(expected))
+ return true;
+ else
+ return false;
+ }
}