diff --git a/src/main/java/org/apache/sling/testing/mock/jcr/MockNodeType.java b/src/main/java/org/apache/sling/testing/mock/jcr/MockNodeType.java
index 7033df5..7e5e947 100644
--- a/src/main/java/org/apache/sling/testing/mock/jcr/MockNodeType.java
+++ b/src/main/java/org/apache/sling/testing/mock/jcr/MockNodeType.java
@@ -24,13 +24,16 @@
 import javax.jcr.nodetype.NodeTypeIterator;
 import javax.jcr.nodetype.PropertyDefinition;
 
+import org.apache.commons.lang3.StringUtils;
+import org.apache.jackrabbit.JcrConstants;
+
 /**
  * Mock {@link NodeType} implementation.
  */
 class MockNodeType implements NodeType {
 
     private final String name;
-
+    
     public MockNodeType(final String name) {
         this.name = name;
     }
@@ -46,6 +49,13 @@
         return this.name.equals(nodeTypeName);
     }
 
+    @Override
+    public boolean hasOrderableChildNodes() {
+        // support only well-known built-in node type
+        return StringUtils.equals(getName(), JcrConstants.NT_UNSTRUCTURED);
+    }
+
+    
     // --- unsupported operations ---
     @Override
     public boolean canAddChildNode(final String childNodeName) {
@@ -108,11 +118,6 @@
     }
 
     @Override
-    public boolean hasOrderableChildNodes() {
-        throw new UnsupportedOperationException();
-    }
-
-    @Override
     public boolean isMixin() {
         throw new UnsupportedOperationException();
     }
