You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by st...@apache.org on 2014/05/16 13:26:47 UTC
svn commit: r1595159 - in /sling/trunk/tooling/ide/api-test: pom.xml
src/test/java/org/apache/sling/ide/serialization/StubNodeTypeRegistry.java
src/test/java/org/apache/sling/ide/serialization/StubRepository.java
Author: stefanegli
Date: Fri May 16 11:26:47 2014
New Revision: 1595159
URL: http://svn.apache.org/r1595159
Log:
SLING-3571 : fixing test
Added:
sling/trunk/tooling/ide/api-test/src/test/java/org/apache/sling/ide/serialization/StubNodeTypeRegistry.java (with props)
Modified:
sling/trunk/tooling/ide/api-test/pom.xml
sling/trunk/tooling/ide/api-test/src/test/java/org/apache/sling/ide/serialization/StubRepository.java
Modified: sling/trunk/tooling/ide/api-test/pom.xml
URL: http://svn.apache.org/viewvc/sling/trunk/tooling/ide/api-test/pom.xml?rev=1595159&r1=1595158&r2=1595159&view=diff
==============================================================================
--- sling/trunk/tooling/ide/api-test/pom.xml (original)
+++ sling/trunk/tooling/ide/api-test/pom.xml Fri May 16 11:26:47 2014
@@ -20,5 +20,17 @@
<version>${project.version}</version>
<type>eclipse-plugin</type>
</dependency>
+ <dependency>
+ <groupId>javax.jcr</groupId>
+ <artifactId>jcr</artifactId>
+ <version>2.0</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-all</artifactId>
+ <version>1.9.5</version>
+ <scope>test</scope>
+ </dependency>
</dependencies>
</project>
Added: sling/trunk/tooling/ide/api-test/src/test/java/org/apache/sling/ide/serialization/StubNodeTypeRegistry.java
URL: http://svn.apache.org/viewvc/sling/trunk/tooling/ide/api-test/src/test/java/org/apache/sling/ide/serialization/StubNodeTypeRegistry.java?rev=1595159&view=auto
==============================================================================
--- sling/trunk/tooling/ide/api-test/src/test/java/org/apache/sling/ide/serialization/StubNodeTypeRegistry.java (added)
+++ sling/trunk/tooling/ide/api-test/src/test/java/org/apache/sling/ide/serialization/StubNodeTypeRegistry.java Fri May 16 11:26:47 2014
@@ -0,0 +1,71 @@
+package org.apache.sling.ide.serialization;
+
+import static org.mockito.Matchers.anyString;
+import static org.mockito.Mockito.when;
+
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+
+import javax.jcr.Node;
+import javax.jcr.nodetype.NodeType;
+
+import org.apache.sling.ide.transport.NodeTypeRegistry;
+import org.apache.sling.ide.transport.RepositoryException;
+import org.mockito.Mockito;
+import org.mockito.stubbing.Answer;
+
+public class StubNodeTypeRegistry implements NodeTypeRegistry {
+
+ List<NodeType> nodeTypes = new LinkedList<NodeType>();
+
+ @Override
+ public boolean isAllowedPrimaryChildNodeType(String parentNodeType,
+ String childNodeType) throws RepositoryException {
+ throw new IllegalStateException("not yet implemented");
+ }
+
+ @Override
+ public Collection<String> getAllowedPrimaryChildNodeTypes(
+ String parentNodeType) throws RepositoryException {
+ throw new IllegalStateException("not yet implemented");
+ }
+
+ void addNodeType(String name, String[] superTypeNames) {
+ nodeTypes.add(getNodeTypeMock(name, superTypeNames));
+ }
+
+ private NodeType getNodeTypeMock(String name, String[] superTypeNames) {
+ NodeType nodeType = Mockito.mock(NodeType.class);
+ when(nodeType.getName()).thenReturn(name);
+ if (superTypeNames!=null) {
+ NodeType[] superTypes = new NodeType[superTypeNames.length];
+ for (int i = 0; i < superTypeNames.length; i++) {
+ String aSuperTypeName = superTypeNames[i];
+ NodeType aSuperType = getNodeTypeMock(aSuperTypeName, null);
+ superTypes[i] = aSuperType;
+ }
+ when(nodeType.getSupertypes()).thenReturn(superTypes);
+ when(nodeType.getDeclaredSupertypeNames()).thenReturn(superTypeNames);
+ }
+ return nodeType;
+ }
+
+ @Override
+ public List<NodeType> getNodeTypes() {
+ return new LinkedList<NodeType>(nodeTypes);
+ }
+
+ @Override
+ public NodeType getNodeType(String name) {
+ for (Iterator<NodeType> it = nodeTypes.iterator(); it.hasNext();) {
+ NodeType nt = it.next();
+ if (nt.getName().equals(name)) {
+ return nt;
+ }
+ }
+ return getNodeTypeMock(name, null);
+ }
+
+}
Propchange: sling/trunk/tooling/ide/api-test/src/test/java/org/apache/sling/ide/serialization/StubNodeTypeRegistry.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: sling/trunk/tooling/ide/api-test/src/test/java/org/apache/sling/ide/serialization/StubRepository.java
URL: http://svn.apache.org/viewvc/sling/trunk/tooling/ide/api-test/src/test/java/org/apache/sling/ide/serialization/StubRepository.java?rev=1595159&r1=1595158&r2=1595159&view=diff
==============================================================================
--- sling/trunk/tooling/ide/api-test/src/test/java/org/apache/sling/ide/serialization/StubRepository.java (original)
+++ sling/trunk/tooling/ide/api-test/src/test/java/org/apache/sling/ide/serialization/StubRepository.java Fri May 16 11:26:47 2014
@@ -29,76 +29,6 @@ public class StubRepository implements R
@Override
public Command<ResourceProxy> newListChildrenNodeCommand(final String path) {
-
- if ("/jcr:system/jcr:nodeTypes".equals(path)) {
- return new Command<ResourceProxy>() {
-
- @Override
- public Result<ResourceProxy> execute() {
-
- final ResourceProxy root = new ResourceProxy(path);
- root.addProperty("jcr:primaryType", "rep:nodeTypes");
-
- // nt:file
- ResourceProxy ntFile = NodeTypeResourceBuilder.newBuilder(root, "nt:file")
- .setSupertypes(new String[] { "nt:hierarchyNode" }).build();
-
- // nt:folder
- ResourceProxy ntFolder = NodeTypeResourceBuilder.newBuilder(root, "nt:folder")
- .setSupertypes(new String[] { "nt:hierarchyNode" }).build();
-
- // nt:hierarchyNode
- ResourceProxy ntHierarchyNode = NodeTypeResourceBuilder.newBuilder(root, "nt:hierarchyNode")
- .setSupertypes(new String[] { "mix:created", "nt:base" }).build();
-
- // nt:unstructured
- ResourceProxy ntUnstructured = NodeTypeResourceBuilder.newBuilder(root, "nt:unstructured")
- .setSupertypes(new String[] {"nt:base" }).build();
-
- // nt:base
- ResourceProxy ntBase = NodeTypeResourceBuilder.newBuilder(root, "nt:base")
- .setSupertypes(new String[] { }).build();
-
- // sling:OsgiConfig
- ResourceProxy slingOsgiConfig = NodeTypeResourceBuilder.newBuilder(root, "sling:OsgiConfig")
- .setSupertypes(new String[] {"nt:hierarchyNode", "nt:unstructured" }).build();
-
- // sling:Folder
- ResourceProxy slingFolder = NodeTypeResourceBuilder.newBuilder(root, "sling:Folder")
- .setSupertypes(new String[] {"nt:folder" }).build();
-
- // vlt:FullCoverage
- ResourceProxy vltFullCoverage = NodeTypeResourceBuilder.newBuilder(root, "vlt:FullCoverage")
- .setIsMixin(true).setSupertypes(new String[] {}).build();
-
- root.addChild(ntFile);
- root.addChild(ntFolder);
- root.addChild(ntHierarchyNode);
- root.addChild(ntUnstructured);
- root.addChild(ntBase);
- root.addChild(slingOsgiConfig);
- root.addChild(slingFolder);
- root.addChild(vltFullCoverage);
-
- return new Result<ResourceProxy>() {
- public ResourceProxy get() throws RepositoryException {
- return root;
- }
-
- @Override
- public boolean isSuccess() {
- return true;
- };
- };
- }
-
- @Override
- public String getPath() {
- return path;
- }
- };
- }
-
return null;
}
@@ -129,6 +59,17 @@ public class StubRepository implements R
@Override
public NodeTypeRegistry getNodeTypeRegistry() {
- return null;
+ final StubNodeTypeRegistry stubNodeTypeRegistry = new StubNodeTypeRegistry();
+
+ stubNodeTypeRegistry.addNodeType("nt:file", new String[] {"nt:hierarchyNode"});
+ stubNodeTypeRegistry.addNodeType("nt:folder", new String[] {"nt:hierarchyNode"});
+ stubNodeTypeRegistry.addNodeType("nt:hierarchyNode", new String[] {"mix:created", "nt:base"});
+ stubNodeTypeRegistry.addNodeType("nt:unstructured", new String[] {"nt:base"});
+ stubNodeTypeRegistry.addNodeType("nt:base", new String[] {});
+ stubNodeTypeRegistry.addNodeType("sling:OsgiConfig", new String[] {"nt:hierarchyNode", "nt:unstructured"});
+ stubNodeTypeRegistry.addNodeType("sling:Folder", new String[] {"nt:folder"});
+ stubNodeTypeRegistry.addNodeType("vlt:FullCoverage", new String[] {});
+
+ return stubNodeTypeRegistry;
}
}
\ No newline at end of file