You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@chemistry.apache.org by sk...@apache.org on 2010/03/15 18:35:58 UTC

svn commit: r923360 - in /incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl: ./ src/test/java/org/apache/opencmis/client/runtime/ src/test/java/org/apache/opencmis/client/runtime/mock/ src/test/java/org/apache/opencmis/client/runt...

Author: sklevenz
Date: Mon Mar 15 17:35:58 2010
New Revision: 923360

URL: http://svn.apache.org/viewvc?rev=923360&view=rev
Log:
Client Runtime Junit Test Improvment using InMemory Provider

Added:
    incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureData.java   (with props)
    incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureSessionParameter.java   (contents, props changed)
      - copied, changed from r923107, incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/TestSessionParameter.java
    incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureSetup.java   (contents, props changed)
      - copied, changed from r923107, incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/DataSetup.java
Removed:
    incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/DataSetup.java
    incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/TestSessionParameter.java
    incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/suite/
Modified:
    incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/pom.xml
    incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/Fixture.java
    incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyAclCapabilityTest.java
    incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyContentStreamTest.java
    incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyDiscoverTest.java
    incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyNavigationTest.java
    incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyObjectTest.java
    incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyTypeTest.java
    incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/mock/MockSessionFactory.java

Modified: incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/pom.xml?rev=923360&r1=923359&r2=923360&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/pom.xml (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/pom.xml Mon Mar 15 17:35:58 2010
@@ -84,7 +84,7 @@
 							<groupId>org.apache.maven.plugins</groupId>
 							<artifactId>maven-surefire-plugin</artifactId>
 							<configuration>
-								<argLine>-Dorg.apache.opencmis.client.runtime.suite.config.path=${org.apache.opencmis.client.runtime.suite.config.path}</argLine>
+								<argLine>-Dorg.apache.opencmis.client.runtime.test.config.path=${org.apache.opencmis.client.runtime.test.config.path}</argLine>
 							</configuration>
 						</plugin>
 					</plugins>

Modified: incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/Fixture.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/Fixture.java?rev=923360&r1=923359&r2=923360&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/Fixture.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/Fixture.java Mon Mar 15 17:35:58 2010
@@ -47,22 +47,10 @@ public class Fixture {
 
 	private static Log log = LogFactory.getLog(Fixture.class);
 
-	public static String PROPERTY_FILTER = "*";
 	/*
 	 * general
 	 */
-	public static String TEST_ROOT_FOLDER_NAME = null;
-	public static String FOLDER_TYPE_ID = "test.folder";
-	public static String DOCUMENT_TYPE_ID = "test.file";
-	public static String QUERY = "SELECT * FROM cmis:document";
-
-	/*
-	 * cmis objects
-	 */
-	public static String FOLDER1_NAME = "folder.1";
-	public static String FOLDER2_NAME = "folder.2";
-	public static String DOCUMENT1_NAME = "document.1.txt";
-	public static String DOCUMENT2_NAME = "document.2.txt";
+	public static String TEST_ROOT_FOLDER_NAME = "test_" + UUID.randomUUID().toString();
 
 	/*
 	 * properties
@@ -91,11 +79,7 @@ public class Fixture {
 	/*
 	 * test data setup
 	 */
-	private static DataSetup testData = new DataSetup();
-
-	static {
-		Fixture.TEST_ROOT_FOLDER_NAME = "test_" + UUID.randomUUID().toString();
-	}
+	private static FixtureSetup testData = new FixtureSetup();
 
 	/**
 	 * @return session parameter
@@ -110,18 +94,8 @@ public class Fixture {
 	 * @param paramter
 	 */
 	public static void setParamter(Map<String, String> paramter) {
+		FixtureData.changeValues(paramter);
 		Fixture.parameter = paramter;
-
-		/* overload fixture values */
-		String value;
-
-		value = Fixture.parameter.get(TestSessionParameter.DOCUMENT_TYPE_ID);
-		Fixture.DOCUMENT_TYPE_ID = (value != null ? value
-				: Fixture.DOCUMENT_TYPE_ID);
-
-		value = Fixture.parameter.get(TestSessionParameter.FOLDER_TYPE_ID);
-		Fixture.FOLDER_TYPE_ID = (value != null ? value
-				: Fixture.FOLDER_TYPE_ID);
 	}
 
 	/**
@@ -157,7 +131,7 @@ public class Fixture {
 
 	public static void init() {
 		/* get optional path from system properties */
-		String pathname = System.getProperty(TestSessionParameter.CONFIG_PATH);
+		String pathname = System.getProperty(FixtureSessionParameter.CONFIG_PATH);
 		pathname = (pathname != null) ? pathname.trim() : null;
 		Properties properties = null;
 		Map<String, String> sessionParameter = null;
@@ -190,7 +164,7 @@ public class Fixture {
 
 			/* load factory class */
 			factoryClassName = sessionParameter
-					.get(TestSessionParameter.SESSION_FACTORY);
+					.get(FixtureSessionParameter.SESSION_FACTORY);
 			if (factoryClassName != null
 					&& !"".equalsIgnoreCase(factoryClassName)) {
 				Class<?> clazz = Class.forName(factoryClassName);
@@ -231,7 +205,7 @@ public class Fixture {
 			Fixture.log
 					.info("---------------------------------------------------------------");
 			Fixture.log.info("config path (prop): "
-					+ System.getProperty(TestSessionParameter.CONFIG_PATH));
+					+ System.getProperty(FixtureSessionParameter.CONFIG_PATH));
 			Fixture.log.info("session factory:    "
 					+ Fixture.getSessionFactory().getClass());
 			Fixture.log.info("session parameter:  " + Fixture.getParamter());

Added: incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureData.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureData.java?rev=923360&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureData.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureData.java Mon Mar 15 17:35:58 2010
@@ -0,0 +1,81 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.client.runtime;
+
+import java.util.Map;
+
+public enum FixtureData {
+	FOLDER_TYPE_ID("org.apache.opencmis.client.runtime.test.folder.type.id",
+			"cmis:folder"), DOCUMENT_TYPE_ID(
+			"org.apache.opencmis.client.runtime.test.document.type.id",
+			"cmis:document"), QUERY(
+			"org.apache.opencmis.client.runtime.test.query",
+			"SELECT * FROM cmis:document"), PROPERTY_FILTER(
+			"org.apache.opencmis.client.runtime.test.property.filter", "*"), FOLDER1_NAME(
+			"org.apache.opencmis.client.runtime.test.folder1.name", "folder1"), FOLDER2_NAME(
+			"org.apache.opencmis.client.runtime.test.folder2.name", "folder2"), DOCUMENT1_NAME(
+			"org.apache.opencmis.client.runtime.test.document1.name",
+			"document1.txt"), DOCUMENT2_NAME(
+			"org.apache.opencmis.client.runtime.test.document2.name",
+			"document2.txt"), ;
+
+	// XXX("org.apache.opencmis.client.runtime.test.XXX", "XXX"),
+
+	private String key;
+	private String value;
+
+	FixtureData(String key, String value) {
+		this.key = key;
+		this.value = value;
+	}
+
+	public String value() {
+		return this.value;
+	}
+
+	public static void changeValues(Map<String, String> map) {
+		for (FixtureData fd : FixtureData.values()) {
+			String v = map.get(fd.key);
+			if (v != null) {
+				fd.changeValue(v);
+			}
+		}
+	}
+
+	public static FixtureData get(String key) {
+		for (FixtureData fd : FixtureData.values()) {
+			if (fd.key.equals(key)) {
+				return fd;
+			}
+		}
+		throw new IllegalArgumentException(key);
+	}
+
+	void changeValue(String newValue) {
+		this.value = newValue;
+	}
+
+	public String toString() {
+		return this.value();
+	}
+
+	public String key() {
+		return this.key;
+	}
+}

Propchange: incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureData.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Copied: incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureSessionParameter.java (from r923107, incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/TestSessionParameter.java)
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureSessionParameter.java?p2=incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureSessionParameter.java&p1=incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/TestSessionParameter.java&r1=923107&r2=923360&rev=923360&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/TestSessionParameter.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureSessionParameter.java Mon Mar 15 17:35:58 2010
@@ -18,18 +18,17 @@
  */
 package org.apache.opencmis.client.runtime;
 
-public interface TestSessionParameter {
+public interface FixtureSessionParameter {
 
 	/*
 	 * session parameter
 	 */
-	static final String FOLDER_TYPE_ID =   "org.apache.opencmis.client.runtime.test.folder.type.id";
-	static final String DOCUMENT_TYPE_ID = "org.apache.opencmis.client.runtime.test.document.type.id";
 
-	/*
-	 * environment
+	/**
+	 * CONFIG_PATH is referenced in pom.xml! If you change here then change pom.
 	 */
 	static final String CONFIG_PATH =         "org.apache.opencmis.client.runtime.test.config.path";
+
 	static final String SESSION_FACTORY =     "org.apache.opencmis.client.runtime.test.session.factory";
 	static final String TEST_ROOT_FOLDER_ID = "org.apache.opencmis.client.runtime.test.root.folder.id";
 

Propchange: incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureSessionParameter.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Copied: incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureSetup.java (from r923107, incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/DataSetup.java)
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureSetup.java?p2=incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureSetup.java&p1=incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/DataSetup.java&r1=923107&r2=923360&rev=923360&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/DataSetup.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureSetup.java Mon Mar 15 17:35:58 2010
@@ -33,7 +33,7 @@ import org.apache.opencmis.commons.provi
 import org.apache.opencmis.util.repository.ObjectGenerator;
 import org.junit.Assert;
 
-public class DataSetup {
+public class FixtureSetup {
 
 	private CmisProvider provider = null;
 	private String rootFolderId = null; // root
@@ -63,10 +63,10 @@ public class DataSetup {
 
 		// root folder
 		if (Fixture.getParamter().containsKey(
-				TestSessionParameter.TEST_ROOT_FOLDER_ID)) {
+				FixtureSessionParameter.TEST_ROOT_FOLDER_ID)) {
 			// test root folder
 			this.rootFolderId = Fixture.getParamter().get(
-					TestSessionParameter.TEST_ROOT_FOLDER_ID);
+					FixtureSessionParameter.TEST_ROOT_FOLDER_ID);
 			Assert.assertNotNull(this.rootFolderId);
 		} else {
 			RepositoryInfoData rid = this.provider.getRepositoryService()
@@ -77,18 +77,15 @@ public class DataSetup {
 		}
 
 		// object types
-		String documentTypeId = Fixture.getParamter().get(
-				TestSessionParameter.DOCUMENT_TYPE_ID);
+		String documentTypeId = FixtureData.DOCUMENT_TYPE_ID.value();
 		Assert.assertNotNull(documentTypeId);
-		String folderTypeId = Fixture.getParamter().get(
-				TestSessionParameter.FOLDER_TYPE_ID);
-		;
+		String folderTypeId = FixtureData.FOLDER_TYPE_ID.value();
 		Assert.assertNotNull(folderTypeId);
 
 		// create test root folder
 		List<PropertyData<?>> propList = new ArrayList<PropertyData<?>>();
 		propList.add(this.provider.getObjectFactory().createPropertyStringData(
-				PropertyIds.CMIS_NAME, UUID.randomUUID().toString()));
+				PropertyIds.CMIS_NAME, Fixture.TEST_ROOT_FOLDER_NAME));
 		propList.add(this.provider.getObjectFactory().createPropertyIdData(
 				PropertyIds.CMIS_OBJECT_TYPE_ID, folderTypeId));
 
@@ -107,6 +104,6 @@ public class DataSetup {
 		og.setFolderPropertiesToGenerate(new ArrayList<String>());
 
 		og.createFolderHierachy(2, 2, this.testRootFolderId);
-
 	}
+	
 }

Propchange: incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/FixtureSetup.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyAclCapabilityTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyAclCapabilityTest.java?rev=923360&r1=923359&r2=923360&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyAclCapabilityTest.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyAclCapabilityTest.java Mon Mar 15 17:35:58 2010
@@ -38,8 +38,6 @@ public class ReadOnlyAclCapabilityTest e
 
   @Before
   public void setup() throws Exception {
-    super.setUp();
-
     RepositoryInfo r = this.session.getRepositoryInfo();
     // capabilities
     RepositoryCapabilities repcap = r.getCapabilities();

Modified: incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyContentStreamTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyContentStreamTest.java?rev=923360&r1=923359&r2=923360&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyContentStreamTest.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyContentStreamTest.java Mon Mar 15 17:35:58 2010
@@ -30,27 +30,28 @@ import org.apache.opencmis.client.api.Do
 
 public class ReadOnlyContentStreamTest extends AbstractSessionTest {
 
-  @Test
-  public void readContentStream() throws IOException {
-    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME + "/" + Fixture.DOCUMENT1_NAME;
-    Document document = (Document) this.session.getObjectByPath(path);
-    Assert.assertNotNull("document not found: " + path, document);
-
-    ContentStream s = document.getContentStream();
-
-    Assert.assertNotNull(s.getMimeType());
-    Assert.assertTrue(s.getLength() > 0);
-    Assert.assertNotNull(s.getFileName());
-
-    InputStream is = s.getStream();
-    Assert.assertNotNull(is);
-
-    ByteArrayOutputStream baos = new ByteArrayOutputStream();
-    baos.write(is.read());
-    byte[] b = baos.toByteArray();
-
-    Assert.assertNotNull(b);
-    Assert.assertTrue(b.length > 0);
-  }
+	@Test
+	public void readContentStream() throws IOException {
+		String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME + "/"
+				+ FixtureData.DOCUMENT1_NAME.toString();
+		Document document = (Document) this.session.getObjectByPath(path);
+		Assert.assertNotNull("document not found: " + path, document);
+
+		ContentStream s = document.getContentStream();
+
+		Assert.assertNotNull(s.getMimeType());
+		s.getLength();
+		s.getFileName();
+
+		InputStream is = s.getStream();
+		Assert.assertNotNull(is);
+
+		ByteArrayOutputStream baos = new ByteArrayOutputStream();
+		baos.write(is.read());
+		byte[] b = baos.toByteArray();
+
+		Assert.assertNotNull(b);
+		Assert.assertTrue(b.length > 0);
+	}
 
 }

Modified: incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyDiscoverTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyDiscoverTest.java?rev=923360&r1=923359&r2=923360&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyDiscoverTest.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyDiscoverTest.java Mon Mar 15 17:35:58 2010
@@ -47,7 +47,7 @@ public class ReadOnlyDiscoverTest extend
       ReadOnlyDiscoverTest.log.info("queries not supported");
       break;
     default:
-      PagingList<QueryResult> resultSet = this.session.query(Fixture.QUERY, false, -1);
+      PagingList<QueryResult> resultSet = this.session.query(FixtureData.QUERY.toString(), false, -1);
       Assert.assertNotNull(resultSet);
       //Assert.assertFalse(resultSet.isEmpty());
       for (List<QueryResult> lo : resultSet) {

Modified: incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyNavigationTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyNavigationTest.java?rev=923360&r1=923359&r2=923360&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyNavigationTest.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyNavigationTest.java Mon Mar 15 17:35:58 2010
@@ -29,70 +29,163 @@ import org.apache.opencmis.client.api.ut
 import org.apache.opencmis.client.api.util.PagingList;
 import org.junit.Test;
 
-import sun.reflect.generics.tree.Tree;
-
 public class ReadOnlyNavigationTest extends AbstractSessionTest {
 
-  @Test
-  public void navigateChildren() {
-    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME;
-    Folder folder = (Folder) this.session.getObjectByPath(path);
-    Assert.assertNotNull("folder not found: " + path, folder);
-
-    PagingList<CmisObject> pl = folder.getChildren(null, -1);
-    Assert.assertNotNull(pl);
-    //Assert.assertFalse(pl.isEmpty());
-
-    for (List<CmisObject> cl : pl) {
-      for (CmisObject o : cl) {
-        Assert.assertNotNull(o);
-      }
-    }
-  }
-
-  @Test
-  public void navigateDescendants() {
-    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME;
-    Folder folder = (Folder) this.session.getObjectByPath(path);
-    Assert.assertNotNull("folder not found: " + path, folder);
-
-    List<Container<FileableCmisObject>> desc = folder.getDescendants(-1);
-    Assert.assertNotNull(desc);
-    Assert.assertFalse(desc.isEmpty());
-
-    for (Container<FileableCmisObject> o : desc) {
-      Assert.assertNotNull(o);
-      Assert.assertNotNull(o.getItem());
-    }
-  }
-
-  @Test
-  public void navigateTree() {
-    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME;
-    Folder folder = (Folder) this.session.getObjectByPath(path);
-    Assert.assertNotNull("folder not found: " + path, folder);
-
-    List<Container<FileableCmisObject>> tree = folder.getFolderTree(-1);
-    Assert.assertNotNull(tree);
-    Assert.assertFalse(tree.isEmpty());
-
-    for (Container<FileableCmisObject> o : tree) {
-      Assert.assertNotNull(o);
-      Assert.assertNotNull(o.getItem());
-    }
-  }
-
-  @Test
-  public void navigatePagingRandom() {
-    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME;
-    Folder folder = (Folder) this.session.getObjectByPath(path);
-    Assert.assertNotNull("folder not found: " + path, folder);
-
-    PagingList<CmisObject> pl = folder.getChildren(null, -1);
-    Assert.assertNotNull(pl);
-    //Assert.assertFalse(pl.isEmpty());
-
-    List<CmisObject> firstPage = pl.get(0);
-    Assert.assertNotNull(firstPage);
-  }
+	@Test
+	public void navigateChildrenMin() {
+		String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME;
+		Folder folder = (Folder) this.session.getObjectByPath(path);
+		Assert.assertNotNull("folder not found: " + path, folder);
+
+		PagingList<CmisObject> pl = folder.getChildren(1);
+		Assert.assertNotNull(pl);
+		// Assert.assertFalse(pl.isEmpty());
+
+		for (List<CmisObject> cl : pl) {
+			for (CmisObject o : cl) {
+				Assert.assertNotNull(o);
+			}
+		}
+	}
+
+	@Test
+	public void navigateChildrenMax() {
+		String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME;
+		Folder folder = (Folder) this.session.getObjectByPath(path);
+		Assert.assertNotNull("folder not found: " + path, folder);
+
+		PagingList<CmisObject> pl = folder.getChildren(1000);
+		Assert.assertNotNull(pl);
+		// Assert.assertFalse(pl.isEmpty());
+
+		for (List<CmisObject> cl : pl) {
+			for (CmisObject o : cl) {
+				Assert.assertNotNull(o);
+			}
+		}
+	}
+
+	@Test
+	public void navigateChildrenMed() {
+		String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME;
+		Folder folder = (Folder) this.session.getObjectByPath(path);
+		Assert.assertNotNull("folder not found: " + path, folder);
+
+		PagingList<CmisObject> pl = folder.getChildren(2);
+		Assert.assertNotNull(pl);
+		// Assert.assertFalse(pl.isEmpty());
+
+		for (List<CmisObject> cl : pl) {
+			for (CmisObject o : cl) {
+				Assert.assertNotNull(o);
+			}
+		}
+	}
+
+	
+	@Test
+	public void navigateDescendantsMin() {
+		String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME;
+		Folder folder = (Folder) this.session.getObjectByPath(path);
+		Assert.assertNotNull("folder not found: " + path, folder);
+
+		List<Container<FileableCmisObject>> desc = folder.getDescendants(1);
+		Assert.assertNotNull(desc);
+		Assert.assertFalse(desc.isEmpty());
+
+		for (Container<FileableCmisObject> o : desc) {
+			Assert.assertNotNull(o);
+			Assert.assertNotNull(o.getItem());
+		}
+	}
+	@Test
+	public void navigateDescendantsMax() {
+		String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME;
+		Folder folder = (Folder) this.session.getObjectByPath(path);
+		Assert.assertNotNull("folder not found: " + path, folder);
+
+		List<Container<FileableCmisObject>> desc = folder.getDescendants(1000);
+		Assert.assertNotNull(desc);
+		Assert.assertFalse(desc.isEmpty());
+
+		for (Container<FileableCmisObject> o : desc) {
+			Assert.assertNotNull(o);
+			Assert.assertNotNull(o.getItem());
+		}
+	}
+	@Test
+	public void navigateDescendantsMed() {
+		String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME;
+		Folder folder = (Folder) this.session.getObjectByPath(path);
+		Assert.assertNotNull("folder not found: " + path, folder);
+
+		List<Container<FileableCmisObject>> desc = folder.getDescendants(2);
+		Assert.assertNotNull(desc);
+		Assert.assertFalse(desc.isEmpty());
+
+		for (Container<FileableCmisObject> o : desc) {
+			Assert.assertNotNull(o);
+			Assert.assertNotNull(o.getItem());
+		}
+	}
+
+	@Test
+	public void navigateTreeMed() {
+		String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME;
+		Folder folder = (Folder) this.session.getObjectByPath(path);
+		Assert.assertNotNull("folder not found: " + path, folder);
+
+		List<Container<FileableCmisObject>> tree = folder.getFolderTree(2);
+		Assert.assertNotNull(tree);
+		Assert.assertFalse(tree.isEmpty());
+
+		for (Container<FileableCmisObject> o : tree) {
+			Assert.assertNotNull(o);
+			Assert.assertNotNull(o.getItem());
+		}
+	}
+	@Test
+	public void navigateTreeMin() {
+		String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME;
+		Folder folder = (Folder) this.session.getObjectByPath(path);
+		Assert.assertNotNull("folder not found: " + path, folder);
+
+		List<Container<FileableCmisObject>> tree = folder.getFolderTree(1);
+		Assert.assertNotNull(tree);
+		Assert.assertFalse(tree.isEmpty());
+
+		for (Container<FileableCmisObject> o : tree) {
+			Assert.assertNotNull(o);
+			Assert.assertNotNull(o.getItem());
+		}
+	}
+	@Test
+	public void navigateTreeMax() {
+		String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME;
+		Folder folder = (Folder) this.session.getObjectByPath(path);
+		Assert.assertNotNull("folder not found: " + path, folder);
+
+		List<Container<FileableCmisObject>> tree = folder.getFolderTree(1000);
+		Assert.assertNotNull(tree);
+		Assert.assertFalse(tree.isEmpty());
+
+		for (Container<FileableCmisObject> o : tree) {
+			Assert.assertNotNull(o);
+			Assert.assertNotNull(o.getItem());
+		}
+	}
+
+	@Test
+	public void navigatePagingRandom() {
+		String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME;
+		Folder folder = (Folder) this.session.getObjectByPath(path);
+		Assert.assertNotNull("folder not found: " + path, folder);
+
+		PagingList<CmisObject> pl = folder.getChildren(2);
+		Assert.assertNotNull(pl);
+		// Assert.assertFalse(pl.isEmpty());
+
+		List<CmisObject> firstPage = pl.get(0);
+		Assert.assertNotNull(firstPage);
+	}
 }

Modified: incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyObjectTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyObjectTest.java?rev=923360&r1=923359&r2=923360&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyObjectTest.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyObjectTest.java Mon Mar 15 17:35:58 2010
@@ -44,17 +44,11 @@ public class ReadOnlyObjectTest extends 
     Folder root = this.session.getRootFolder();
     Assert.assertNotNull(root);
 
-    Assert.assertEquals("", root.getName());
+    root.getName();
     Assert.assertNotNull(root.getId());
     Assert.assertNull(root.getFolderParent());
     Assert.assertNotNull(root.getType());
-    Assert.assertEquals(Fixture.FOLDER_TYPE_ID, root.getType().getId());
-
-    Assert.assertEquals("", root.getName());
-    Assert.assertNotNull(root.getId());
-    Assert.assertNull(root.getFolderParent());
-    Assert.assertNotNull(root.getType());
-    Assert.assertEquals(Fixture.FOLDER_TYPE_ID, root.getType().getId());
+    Assert.assertEquals(FixtureData.FOLDER_TYPE_ID.toString(), root.getType().getId());
   }
 
   @Test
@@ -67,7 +61,7 @@ public class ReadOnlyObjectTest extends 
     Assert.assertNotNull(folder.getId());
     Assert.assertNotNull(folder.getFolderParent());
     Assert.assertNotNull(folder.getType());
-    Assert.assertEquals(Fixture.FOLDER_TYPE_ID, folder.getType().getId());
+    Assert.assertEquals(FixtureData.FOLDER_TYPE_ID.toString(), folder.getType().getId());
     Assert.assertNotNull(folder.getBaseType());
     Assert.assertEquals(ObjectType.FOLDER_BASETYPE_ID, folder.getBaseType().getId());
 
@@ -83,21 +77,20 @@ public class ReadOnlyObjectTest extends 
 
   @Test
   public void readTestDocument() {
-    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME + "/" + Fixture.DOCUMENT1_NAME;
+    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME + "/" + FixtureData.DOCUMENT1_NAME;
     Document document = (Document) this.session.getObjectByPath(path);
     Assert.assertNotNull("document not found: " + path, document);
 
     Assert.assertNotNull(document.getId());
     Assert.assertNotNull(document.getBaseType());
     Assert.assertEquals(ObjectType.DOCUMENT_BASETYPE_ID, document.getBaseType().getId());
-    Assert.assertEquals(Fixture.DOCUMENT1_NAME, document.getName());
+    Assert.assertEquals(FixtureData.DOCUMENT1_NAME.toString(), document.getName());
     Assert.assertNotNull(document.getType());
-    Assert.assertEquals(Fixture.DOCUMENT_TYPE_ID, document.getType().getId());
-
+    Assert.assertEquals(FixtureData.DOCUMENT_TYPE_ID.toString(), document.getType().getId());
   }
 
   public void readDocumentDefaultProperties() {
-    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME + "/" + Fixture.DOCUMENT1_NAME;
+    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME + "/" + FixtureData.DOCUMENT1_NAME;
     Document document = (Document) this.session.getObjectByPath(path);
     Assert.assertNotNull("document not found: " + path, document);
 
@@ -112,7 +105,7 @@ public class ReadOnlyObjectTest extends 
 
   @Test
   public void readDocumentPropertiesWithFilter() {
-    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME + "/" + Fixture.DOCUMENT1_NAME;
+    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME + "/" + FixtureData.DOCUMENT1_NAME;
     Document document = (Document) this.session.getObjectByPath(path);
     Assert.assertNotNull("document not found: " + path, document);
 
@@ -187,7 +180,7 @@ public class ReadOnlyObjectTest extends 
 
   @Test
   public void readDocumentProperties() {
-    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME + "/" + Fixture.DOCUMENT1_NAME;
+    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME + "/" + FixtureData.DOCUMENT1_NAME;
     Document document = (Document) this.session.getObjectByPath(path);
     Assert.assertNotNull("document not found: " + path, document);
 
@@ -261,7 +254,7 @@ public class ReadOnlyObjectTest extends 
 
   @Test
   public void readSingleProperty() {
-    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME + "/" + Fixture.DOCUMENT1_NAME;
+    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME + "/" + FixtureData.DOCUMENT1_NAME;
     Document document = (Document) this.session.getObjectByPath(path);
     Assert.assertNotNull("document not found: " + path, document);
 
@@ -278,7 +271,7 @@ public class ReadOnlyObjectTest extends 
 
   @Test
   public void readMultiValueProperty() {
-    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME + "/" + Fixture.DOCUMENT1_NAME;
+    String path = "/" + Fixture.TEST_ROOT_FOLDER_NAME + "/" + FixtureData.DOCUMENT1_NAME;
     Document document = (Document) this.session.getObjectByPath(path);
     Assert.assertNotNull("document not found: " + path, document);
 

Modified: incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyTypeTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyTypeTest.java?rev=923360&r1=923359&r2=923360&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyTypeTest.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/ReadOnlyTypeTest.java Mon Mar 15 17:35:58 2010
@@ -29,93 +29,114 @@ import org.apache.opencmis.client.api.ob
 import org.apache.opencmis.client.api.objecttype.RelationshipType;
 import org.apache.opencmis.client.api.util.Container;
 import org.apache.opencmis.client.api.util.PagingList;
+import org.apache.opencmis.commons.exceptions.CmisObjectNotFoundException;
 import org.junit.Test;
 
 public class ReadOnlyTypeTest extends AbstractSessionTest {
 
-  @Test
-  public void readBaseTypePolicy() {
-    ObjectType otd = this.session.getTypeDefinition(ObjectType.POLICY_BASETYPE_ID);
-    Assert.assertNotNull(otd);
-    Assert.assertTrue(otd instanceof PolicyType);
-    Assert.assertEquals(ObjectType.POLICY_BASETYPE_ID, otd.getId());
-    Assert.assertEquals(null, otd.getBaseType());
-  }
-
-  @Test
-  public void readBaseTypeRelation() {
-    ObjectType otd = this.session.getTypeDefinition(ObjectType.RELATIONSHIP_BASETYPE_ID);
-    Assert.assertNotNull(otd);
-    Assert.assertTrue(otd instanceof RelationshipType);
-    Assert.assertEquals(ObjectType.RELATIONSHIP_BASETYPE_ID, otd.getId());
-    Assert.assertEquals(null, otd.getBaseType());
-  }
-
-  @Test
-  public void readBaseTypeDocument() {
-    ObjectType otd = this.session.getTypeDefinition(ObjectType.DOCUMENT_BASETYPE_ID);
-    Assert.assertNotNull(otd);
-    Assert.assertTrue(otd instanceof DocumentType);
-    Assert.assertEquals(ObjectType.DOCUMENT_BASETYPE_ID, otd.getId());
-    Assert.assertEquals(null, otd.getBaseType());
-
-  }
-
-  @Test
-  public void readBaseTypeFolder() {
-    ObjectType otf = this.session.getTypeDefinition(ObjectType.FOLDER_BASETYPE_ID);
-    Assert.assertNotNull(otf);
-    Assert.assertTrue(otf instanceof FolderType);
-    Assert.assertEquals(ObjectType.FOLDER_BASETYPE_ID, otf.getId());
-    Assert.assertEquals(null, otf.getBaseType());
-  }
-
-  @Test
-  public void readTypeChildrenDocument() {
-    ObjectType otd = this.session.getTypeDefinition(ObjectType.DOCUMENT_BASETYPE_ID);
-    Assert.assertNotNull(otd);
-    PagingList<ObjectType> pc = this.session.getTypeChildren(otd.getId(), true, -1);
-    Assert.assertNotNull(pc);
-
-    for (List<ObjectType> children : pc) {
-      for (ObjectType ot1 : children) {
-        ObjectType ot2 = this.session.getTypeDefinition(ot1.getId());
-        Assert.assertEquals(ot1, ot2);
-      }
-    }
-  }
-
-  @Test
-  public void readTypeChildrenFolder() {
-    ObjectType otd = this.session.getTypeDefinition(ObjectType.FOLDER_BASETYPE_ID);
-    Assert.assertNotNull(otd);
-    PagingList<ObjectType> pc = this.session.getTypeChildren(otd.getId(), true, -1);
-    Assert.assertNotNull(pc);
-
-    for (List<ObjectType> children : pc) {
-      for (ObjectType ot1 : children) {
-        ObjectType ot2 = this.session.getTypeDefinition(ot1.getId());
-        Assert.assertEquals(ot1, ot2);
-      }
-    }
-  }
-
-  @Test
-  public void readTypeDescandantsDocument() {
-    ObjectType otd = this.session.getTypeDefinition(ObjectType.DOCUMENT_BASETYPE_ID);
-    Assert.assertNotNull(otd);
-    List<Container<ObjectType>> desc = this.session.getTypeDescendants(otd.getId(), 1, true);
-    Assert.assertNotNull(desc);
-    Assert.assertFalse(desc.isEmpty());
-  }
-
-  @Test
-  public void readTypeDescandantsFolder() {
-    ObjectType otd = this.session.getTypeDefinition(ObjectType.FOLDER_BASETYPE_ID);
-    Assert.assertNotNull(otd);
-    List<Container<ObjectType>> desc = this.session.getTypeDescendants(otd.getId(), 1, true);
-    Assert.assertNotNull(desc);
-    Assert.assertFalse(desc.isEmpty());
-  }
+	@Test
+	public void readOptionalBaseTypePolicy() {
+		try {
+			ObjectType otd = this.session
+					.getTypeDefinition(ObjectType.POLICY_BASETYPE_ID);
+			Assert.assertTrue(otd instanceof PolicyType);
+			Assert.assertEquals(ObjectType.POLICY_BASETYPE_ID, otd.getId());
+			Assert.assertEquals(null, otd.getBaseType());
+		} catch (CmisObjectNotFoundException e) {
+			// policies not supported
+		}
+	}
+
+	@Test
+	public void readOptionalBaseTypeRelation() {
+		try {
+			ObjectType otd = this.session
+					.getTypeDefinition(ObjectType.RELATIONSHIP_BASETYPE_ID);
+			Assert.assertNotNull(otd);
+			Assert.assertTrue(otd instanceof RelationshipType);
+			Assert.assertEquals(ObjectType.RELATIONSHIP_BASETYPE_ID, otd
+					.getId());
+			Assert.assertEquals(null, otd.getBaseType());
+		} catch (CmisObjectNotFoundException e) {
+			// policies not supported
+		}
+	}
+
+	@Test
+	public void readBaseTypeDocument() {
+		ObjectType otd = this.session
+				.getTypeDefinition(ObjectType.DOCUMENT_BASETYPE_ID);
+		Assert.assertNotNull(otd);
+		Assert.assertTrue(otd instanceof DocumentType);
+		Assert.assertEquals(ObjectType.DOCUMENT_BASETYPE_ID, otd.getId());
+		Assert.assertEquals(null, otd.getBaseType());
+
+	}
+
+	@Test
+	public void readBaseTypeFolder() {
+		ObjectType otf = this.session
+				.getTypeDefinition(ObjectType.FOLDER_BASETYPE_ID);
+		Assert.assertNotNull(otf);
+		Assert.assertTrue(otf instanceof FolderType);
+		Assert.assertEquals(ObjectType.FOLDER_BASETYPE_ID, otf.getId());
+		Assert.assertEquals(null, otf.getBaseType());
+	}
+
+	@Test
+	public void readTypeChildrenDocument() {
+		ObjectType otd = this.session
+				.getTypeDefinition(ObjectType.DOCUMENT_BASETYPE_ID);
+		Assert.assertNotNull(otd);
+		PagingList<ObjectType> pc = this.session.getTypeChildren(otd.getId(),
+				true, 2);
+		Assert.assertNotNull(pc);
+
+		for (List<ObjectType> children : pc) {
+			for (ObjectType ot1 : children) {
+				ObjectType ot2 = this.session.getTypeDefinition(ot1.getId());
+				Assert.assertEquals(ot1, ot2);
+			}
+		}
+	}
+
+	@Test
+	public void readTypeChildrenFolder() {
+		ObjectType otd = this.session
+				.getTypeDefinition(ObjectType.FOLDER_BASETYPE_ID);
+		Assert.assertNotNull(otd);
+		PagingList<ObjectType> pc = this.session.getTypeChildren(otd.getId(),
+				true, 2);
+		Assert.assertNotNull(pc);
+
+		for (List<ObjectType> children : pc) {
+			for (ObjectType ot1 : children) {
+				ObjectType ot2 = this.session.getTypeDefinition(ot1.getId());
+				Assert.assertEquals(ot1, ot2);
+			}
+		}
+	}
+
+	@Test
+	public void readTypeDescandantsDocument() {
+		ObjectType otd = this.session
+				.getTypeDefinition(ObjectType.DOCUMENT_BASETYPE_ID);
+		Assert.assertNotNull(otd);
+		List<Container<ObjectType>> desc = this.session.getTypeDescendants(otd
+				.getId(), 1, true);
+		Assert.assertNotNull(desc);
+		Assert.assertFalse(desc.isEmpty());
+	}
+
+	@Test
+	public void readTypeDescandantsFolder() {
+		ObjectType otd = this.session
+				.getTypeDefinition(ObjectType.FOLDER_BASETYPE_ID);
+		Assert.assertNotNull(otd);
+		List<Container<ObjectType>> desc = this.session.getTypeDescendants(otd
+				.getId(), 1, true);
+		Assert.assertNotNull(desc);
+		Assert.assertFalse(desc.isEmpty());
+	}
 
 }

Modified: incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/mock/MockSessionFactory.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/mock/MockSessionFactory.java?rev=923360&r1=923359&r2=923360&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/mock/MockSessionFactory.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-client/opencmis-client-impl/src/test/java/org/apache/opencmis/client/runtime/mock/MockSessionFactory.java Mon Mar 15 17:35:58 2010
@@ -26,7 +26,6 @@ import java.io.ByteArrayInputStream;
 import java.net.URI;
 import java.util.ArrayList;
 import java.util.Calendar;
-import java.util.Collection;
 import java.util.Collections;
 import java.util.Enumeration;
 import java.util.GregorianCalendar;
@@ -61,6 +60,7 @@ import org.apache.opencmis.client.api.re
 import org.apache.opencmis.client.api.util.Container;
 import org.apache.opencmis.client.api.util.PagingList;
 import org.apache.opencmis.client.runtime.Fixture;
+import org.apache.opencmis.client.runtime.FixtureData;
 import org.apache.opencmis.commons.PropertyIds;
 import org.apache.opencmis.commons.SessionParameter;
 import org.apache.opencmis.commons.enums.BaseObjectTypeIds;
@@ -133,17 +133,16 @@ public class MockSessionFactory implemen
 				this.createMockRepositoryInfo()).anyTimes();
 		expect(session.getRootFolder()).andReturn(rootFolder).anyTimes();
 
-    String id = rootFolder.getId();
-    ObjectId objectId = createMockObjectId(id);
-    expect(session.createObjectId(id)).andReturn(objectId).anyTimes();
+		String id = rootFolder.getId();
+		ObjectId objectId = createMockObjectId(id);
+		expect(session.createObjectId(id)).andReturn(objectId).anyTimes();
 
-		
-		expect(session.getDefaultContext()).andReturn(this.createMockOperationContext())
-				.anyTimes();
+		expect(session.getDefaultContext()).andReturn(
+				this.createMockOperationContext()).anyTimes();
 		expect(session.getLocale()).andReturn(new Locale("EN")).anyTimes();
 		expect(session.getObjectFactory()).andReturn(
 				this.createMockObjectFactory()).anyTimes();
-		
+
 		expect(session.getTypeDefinition(ObjectType.DOCUMENT_BASETYPE_ID))
 				.andReturn(
 						this.idTypeIndex.get(ObjectType.DOCUMENT_BASETYPE_ID))
@@ -159,34 +158,53 @@ public class MockSessionFactory implemen
 						this.idTypeIndex
 								.get(ObjectType.RELATIONSHIP_BASETYPE_ID))
 				.anyTimes();
-		expect(session.getTypeDefinition(Fixture.DOCUMENT_TYPE_ID)).andReturn(
-				this.idTypeIndex.get(Fixture.DOCUMENT_TYPE_ID)).anyTimes();
-		expect(session.getTypeDefinition(Fixture.FOLDER_TYPE_ID)).andReturn(
-				this.idTypeIndex.get(Fixture.FOLDER_TYPE_ID)).anyTimes();
 
+		if (!FixtureData.DOCUMENT_TYPE_ID.toString().equalsIgnoreCase(
+				ObjectType.DOCUMENT_BASETYPE_ID)) {
+			expect(
+					session.getTypeDefinition(FixtureData.DOCUMENT_TYPE_ID
+							.toString())).andReturn(
+					this.idTypeIndex.get(FixtureData.DOCUMENT_TYPE_ID
+							.toString())).anyTimes();
+		}
+		if (!FixtureData.FOLDER_TYPE_ID.toString().equalsIgnoreCase(
+				ObjectType.FOLDER_BASETYPE_ID)) {
+			expect(
+					session.getTypeDefinition(FixtureData.FOLDER_TYPE_ID
+							.toString()))
+					.andReturn(
+							this.idTypeIndex.get(FixtureData.FOLDER_TYPE_ID
+									.toString())).anyTimes();
+		}
 		/* document child/descendants types */
 		List<ObjectType> dtl = new ArrayList<ObjectType>();
-		dtl.add(this.idTypeIndex.get(Fixture.DOCUMENT_TYPE_ID));
+		dtl.add(this.idTypeIndex.get(FixtureData.DOCUMENT_TYPE_ID.toString()));
 		PagingList<ObjectType> plot = this.createMockPaging(dtl);
-		Container<ObjectType> ctdoc = this.createMockContainer(this.idTypeIndex.get(Fixture.DOCUMENT_TYPE_ID), null);
+		Container<ObjectType> ctdoc = this.createMockContainer(this.idTypeIndex
+				.get(FixtureData.DOCUMENT_TYPE_ID.toString()), null);
 		expect(
-				session.getTypeChildren(BaseObjectTypeIds.CMIS_DOCUMENT.value(), true, -1))
-						.andReturn(plot).anyTimes();
+				session.getTypeChildren(
+						BaseObjectTypeIds.CMIS_DOCUMENT.value(), true, 2))
+				.andReturn(plot).anyTimes();
 		expect(
-				session.getTypeDescendants(BaseObjectTypeIds.CMIS_DOCUMENT.value(), 1, true))
-						.andReturn(Collections.singletonList(ctdoc)).anyTimes();
+				session.getTypeDescendants(BaseObjectTypeIds.CMIS_DOCUMENT
+						.value(), 1, true)).andReturn(
+				Collections.singletonList(ctdoc)).anyTimes();
 
 		/* folder child/descendants types */
 		List<ObjectType> ftl = new ArrayList<ObjectType>();
-		ftl.add(this.idTypeIndex.get(Fixture.FOLDER_TYPE_ID));
+		ftl.add(this.idTypeIndex.get(FixtureData.FOLDER_TYPE_ID.toString()));
 		PagingList<ObjectType> plfot = this.createMockPaging(ftl);
-    Container<ObjectType> ctfolder = this.createMockContainer(this.idTypeIndex.get(Fixture.FOLDER_TYPE_ID), null);
+		Container<ObjectType> ctfolder = this.createMockContainer(
+				this.idTypeIndex.get(FixtureData.FOLDER_TYPE_ID.toString()),
+				null);
 		expect(
-				session.getTypeChildren(BaseObjectTypeIds.CMIS_FOLDER.value(), true, -1))
-				    .andReturn(plfot).anyTimes();
+				session.getTypeChildren(BaseObjectTypeIds.CMIS_FOLDER.value(),
+						true, 2)).andReturn(plfot).anyTimes();
 		expect(
-				session.getTypeDescendants(BaseObjectTypeIds.CMIS_FOLDER.value(), 1, true))
-						.andReturn(Collections.singletonList(ctfolder)).anyTimes();
+				session.getTypeDescendants(BaseObjectTypeIds.CMIS_FOLDER
+						.value(), 1, true)).andReturn(
+				Collections.singletonList(ctfolder)).anyTimes();
 
 		/* change support */
 		List<ChangeEvent> cel = this.createMockChangeEvents();
@@ -195,12 +213,12 @@ public class MockSessionFactory implemen
 
 		/* query support */
 		List<QueryResult> queryList = new ArrayList<QueryResult>();
-		for(CmisObject cm :this.idObjectIndex.values()) {
-		  queryList.add(createMockQueryResult(cm));
+		for (CmisObject cm : this.idObjectIndex.values()) {
+			queryList.add(createMockQueryResult(cm));
 		}
 		PagingList<QueryResult> plq = this.createMockPaging(queryList);
-		expect(session.query(Fixture.QUERY, false, -1)).andReturn(plq)
-				.anyTimes();
+		expect(session.query(FixtureData.QUERY.toString(), false, -1))
+				.andReturn(plq).anyTimes();
 
 		this.makeObjectsAccessible(session);
 
@@ -249,17 +267,17 @@ public class MockSessionFactory implemen
 	}
 
 	private ObjectId createMockObjectId(String id) {
-	  ObjectId oid = createNiceMock(ObjectId.class);
-	  
-	  expect(oid.getId()).andReturn(id).anyTimes();
-	  
-	  replay(oid);
-	  
-	  return oid;
+		ObjectId oid = createNiceMock(ObjectId.class);
+
+		expect(oid.getId()).andReturn(id).anyTimes();
+
+		replay(oid);
+
+		return oid;
 	}
-	
+
 	private OperationContext createMockOperationContext() {
-	  OperationContext oc = createNiceMock(OperationContext.class);
+		OperationContext oc = createNiceMock(OperationContext.class);
 
 		replay(oc);
 
@@ -273,34 +291,46 @@ public class MockSessionFactory implemen
 		expect(f.getName()).andReturn(Fixture.TEST_ROOT_FOLDER_NAME).anyTimes();
 		expect(f.getFolderParent()).andReturn(parent).anyTimes();
 		expect(f.getType()).andReturn(
-				this.idTypeIndex.get(Fixture.FOLDER_TYPE_ID)).anyTimes();
+				this.idTypeIndex.get(FixtureData.FOLDER_TYPE_ID.toString()))
+				.anyTimes();
 		expect(f.getBaseType()).andReturn(
 				this.idTypeIndex.get(BaseObjectTypeIds.CMIS_FOLDER.value()))
 				.anyTimes();
 		List<CmisObject> children = new ArrayList<CmisObject>();
 		children.add(this.createMockTestFolder(f, "/"
-				+ Fixture.TEST_ROOT_FOLDER_NAME + "/" + Fixture.FOLDER1_NAME,
-				Fixture.FOLDER1_NAME));
+				+ Fixture.TEST_ROOT_FOLDER_NAME + "/"
+				+ FixtureData.FOLDER1_NAME.toString(), FixtureData.FOLDER1_NAME
+				.toString()));
 		children.add(this.createMockTestFolder(f, "/"
-				+ Fixture.TEST_ROOT_FOLDER_NAME + "/" + Fixture.FOLDER2_NAME,
-				Fixture.FOLDER2_NAME));
+				+ Fixture.TEST_ROOT_FOLDER_NAME + "/"
+				+ FixtureData.FOLDER2_NAME.toString(), FixtureData.FOLDER2_NAME
+				.toString()));
 		children.add(this.createMockTestDocument(f, "/"
-				+ Fixture.TEST_ROOT_FOLDER_NAME + "/" + Fixture.DOCUMENT1_NAME,
-				Fixture.DOCUMENT1_NAME));
+				+ Fixture.TEST_ROOT_FOLDER_NAME + "/"
+				+ FixtureData.DOCUMENT1_NAME.toString(),
+				FixtureData.DOCUMENT1_NAME.toString()));
 
 		PagingList<CmisObject> pl = this.createMockPaging(children);
-		expect(f.getChildren(null, -1)).andReturn(pl).anyTimes();
+		expect(f.getChildren(1)).andReturn(pl).anyTimes();
+		expect(f.getChildren(2)).andReturn(pl).anyTimes();
+		expect(f.getChildren(1000)).andReturn(pl).anyTimes();
 
 		List<Container<FileableCmisObject>> ct = new ArrayList<Container<FileableCmisObject>>();
-		Folder f1 = this.createMockTestFolder(f, "/" + Fixture.FOLDER1_NAME,
-				Fixture.FOLDER1_NAME);
-		Folder f2 = this.createMockTestFolder(f, "/" + Fixture.FOLDER2_NAME,
-				Fixture.FOLDER2_NAME);
+		Folder f1 = this.createMockTestFolder(f, "/"
+				+ FixtureData.FOLDER1_NAME.toString(), FixtureData.FOLDER1_NAME
+				.toString());
+		Folder f2 = this.createMockTestFolder(f, "/"
+				+ FixtureData.FOLDER2_NAME.toString(), FixtureData.FOLDER2_NAME
+				.toString());
 		ct.add(this.createMockContainer((FileableCmisObject) f1, null));
-    ct.add(this.createMockContainer((FileableCmisObject) f2, null));
-		
-		expect(f.getDescendants(-1)).andReturn(ct).anyTimes();
-		expect(f.getFolderTree(-1)).andReturn(ct).anyTimes();
+		ct.add(this.createMockContainer((FileableCmisObject) f2, null));
+
+		expect(f.getDescendants(1)).andReturn(ct).anyTimes();
+		expect(f.getDescendants(2)).andReturn(ct).anyTimes();
+		expect(f.getDescendants(1000)).andReturn(ct).anyTimes();
+		expect(f.getFolderTree(1)).andReturn(ct).anyTimes();
+		expect(f.getFolderTree(2)).andReturn(ct).anyTimes();
+		expect(f.getFolderTree(1000)).andReturn(ct).anyTimes();
 		this.createMockProperties(f);
 
 		replay(f);
@@ -343,8 +373,8 @@ public class MockSessionFactory implemen
 			a.add(this.createMockUriProperty(UUID.randomUUID().toString()));
 
 			expect(o.getProperties()).andReturn(a).anyTimes();
-			//expect(o.getProperties(Fixture.PROPERTY_FILTER)).andReturn(a)
-			//		.anyTimes();
+			// expect(o.getProperties(Fixture.PROPERTY_FILTER)).andReturn(a)
+			// .anyTimes();
 
 			/* single property */
 			Property<Object> p1 = (Property<Object>) createMockStringProperty(CmisProperties.OBJECT_ID
@@ -513,7 +543,8 @@ public class MockSessionFactory implemen
 		expect(d.getId()).andReturn(UUID.randomUUID().toString()).anyTimes();
 		expect(d.getName()).andReturn(name).anyTimes();
 		expect(d.getType()).andReturn(
-				this.idTypeIndex.get(Fixture.DOCUMENT_TYPE_ID)).anyTimes();
+				this.idTypeIndex.get(FixtureData.DOCUMENT_TYPE_ID.toString()))
+				.anyTimes();
 		expect(d.getBaseType()).andReturn(
 				this.idTypeIndex.get(BaseObjectTypeIds.CMIS_DOCUMENT.value()))
 				.anyTimes();
@@ -551,15 +582,18 @@ public class MockSessionFactory implemen
 		expect(f.getName()).andReturn(name).anyTimes();
 		expect(f.getFolderParent()).andReturn(parent).anyTimes();
 		expect(f.getType()).andReturn(
-				this.idTypeIndex.get(Fixture.FOLDER_TYPE_ID)).anyTimes();
+				this.idTypeIndex.get(FixtureData.FOLDER_TYPE_ID.toString()))
+				.anyTimes();
 		expect(f.getBaseType()).andReturn(
 				this.idTypeIndex.get(BaseObjectTypeIds.CMIS_FOLDER.value()))
 				.anyTimes();
 		List<CmisObject> children = new ArrayList<CmisObject>();
 		children.add(this.createMockTestDocument(f, path + "/"
-				+ Fixture.DOCUMENT1_NAME, Fixture.DOCUMENT1_NAME));
+				+ FixtureData.DOCUMENT1_NAME.toString(),
+				FixtureData.DOCUMENT1_NAME.toString()));
 		children.add(this.createMockTestDocument(f, path + "/"
-				+ Fixture.DOCUMENT2_NAME, Fixture.DOCUMENT2_NAME));
+				+ FixtureData.DOCUMENT2_NAME.toString(),
+				FixtureData.DOCUMENT2_NAME.toString()));
 
 		PagingList<CmisObject> pl = this.createMockPaging(children);
 		expect(f.getChildren(null, -1)).andReturn(pl).anyTimes();
@@ -576,12 +610,11 @@ public class MockSessionFactory implemen
 	}
 
 	private QueryResult createMockQueryResult(CmisObject cmisObject) {
-	  QueryResult qr = createNiceMock(QueryResult.class);
-  
-	  return qr;
+		QueryResult qr = createNiceMock(QueryResult.class);
+
+		return qr;
 	}
-	
-	
+
 	@SuppressWarnings( { "unchecked" })
 	private <T> PagingList<T> createMockPaging(List<T> items) {
 		PagingList<T> pl = createNiceMock(PagingList.class);
@@ -591,7 +624,7 @@ public class MockSessionFactory implemen
 		Iterator<List<T>> i = a.iterator();
 
 		expect(pl.get(0)).andReturn(items).anyTimes();
-		//expect(pl.isEmpty()).andReturn(false).anyTimes();
+		// expect(pl.isEmpty()).andReturn(false).anyTimes();
 		expect(pl.iterator()).andReturn(i).anyTimes();
 
 		replay(pl);
@@ -599,18 +632,19 @@ public class MockSessionFactory implemen
 		return pl;
 	}
 
-  @SuppressWarnings("unchecked")
-  private <T> Container<T> createMockContainer(T item, List<Container<T>> children) {
-    Container<T> c = createNiceMock(Container.class);
-	  
-	  expect(c.getItem()).andReturn(item).anyTimes();
-	  expect(c.getChildren()).andReturn(children).anyTimes();
-	  
-	  replay(c);
-	  
-	  return c;
+	@SuppressWarnings("unchecked")
+	private <T> Container<T> createMockContainer(T item,
+			List<Container<T>> children) {
+		Container<T> c = createNiceMock(Container.class);
+
+		expect(c.getItem()).andReturn(item).anyTimes();
+		expect(c.getChildren()).andReturn(children).anyTimes();
+
+		replay(c);
+
+		return c;
 	}
-	
+
 	private void createMockGlobalTypes() {
 		FolderType bft = createNiceMock(FolderType.class);
 		expect(bft.getId()).andReturn(ObjectType.FOLDER_BASETYPE_ID).anyTimes();
@@ -618,7 +652,8 @@ public class MockSessionFactory implemen
 		expect(bft.getBaseType()).andReturn(null).anyTimes();
 
 		FolderType ft = createNiceMock(FolderType.class);
-		expect(ft.getId()).andReturn(Fixture.FOLDER_TYPE_ID).anyTimes();
+		expect(ft.getId()).andReturn(FixtureData.FOLDER_TYPE_ID.toString())
+				.anyTimes();
 		expect(ft.isBaseType()).andReturn(false);
 		expect(ft.getBaseType()).andReturn(bft).anyTimes();
 
@@ -640,7 +675,8 @@ public class MockSessionFactory implemen
 		expect(bdt.getBaseType()).andReturn(null).anyTimes();
 
 		DocumentType dt = createNiceMock(DocumentType.class);
-		expect(dt.getId()).andReturn(Fixture.DOCUMENT_TYPE_ID).anyTimes();
+		expect(dt.getId()).andReturn(FixtureData.DOCUMENT_TYPE_ID.toString())
+				.anyTimes();
 		expect(dt.isBaseType()).andReturn(false);
 		expect(dt.getBaseType()).andReturn(bft).anyTimes();
 
@@ -651,10 +687,12 @@ public class MockSessionFactory implemen
 		replay(bpt);
 		replay(brt);
 
-		this.idTypeIndex.put(bft.getId(), bft);
 		this.idTypeIndex.put(ft.getId(), ft);
-		this.idTypeIndex.put(bdt.getId(), bdt);
+		this.idTypeIndex.put(bft.getId(), bft); // can overwrite ft
+
 		this.idTypeIndex.put(dt.getId(), dt);
+		this.idTypeIndex.put(bdt.getId(), bdt); // can overwrite dt
+
 		this.idTypeIndex.put(bpt.getId(), bpt);
 		this.idTypeIndex.put(brt.getId(), brt);
 
@@ -667,7 +705,8 @@ public class MockSessionFactory implemen
 		expect(f.getName()).andReturn("").anyTimes(); // or "root" ?
 		expect(f.getFolderParent()).andReturn(null).anyTimes();
 		expect(f.getType()).andReturn(
-				this.idTypeIndex.get(Fixture.FOLDER_TYPE_ID)).anyTimes();
+				this.idTypeIndex.get(FixtureData.FOLDER_TYPE_ID.toString()))
+				.anyTimes();
 		this.createMockProperties(f);
 
 		replay(f);
@@ -739,8 +778,8 @@ public class MockSessionFactory implemen
 	private interface BooleanProperty extends Property<Boolean> {
 	}
 
-  public List<Repository> getRepositories(Map<String, String> parameters) {
-    return null;
-  }
+	public List<Repository> getRepositories(Map<String, String> parameters) {
+		return null;
+	}
 
 }