Index: src/test/java/org/apache/jackrabbit/core/observation/ReorderTest.java
===================================================================
--- src/test/java/org/apache/jackrabbit/core/observation/ReorderTest.java	(revision 1161126)
+++ src/test/java/org/apache/jackrabbit/core/observation/ReorderTest.java	(working copy)
@@ -23,6 +23,8 @@
 import javax.jcr.RepositoryException;
 import javax.jcr.Node;
 import javax.jcr.observation.Event;
+import javax.jcr.observation.EventIterator;
+import javax.jcr.observation.EventListener;
 
 /**
  * Tests implementation specific aspects of the observation manager.
@@ -90,4 +92,24 @@
         checkNodeAdded(added, new String[]{nodeName1 + "[4]"}, null);
         checkNodeRemoved(removed, new String[]{nodeName1 + "[2]", nodeName3}, null);
     }
+    
+    /**
+     * According to JCR v2.0 (JSR-283) "If the method that caused the NODE_MOVE event was a Node.orderBefore 
+     * then the returned Map has keys srcChildRelPath and destChildRelPath with values corresponding to the 
+     * parameters passed to the orderBefore method, as specified in the Javadoc."
+     */
+    public void testNodeReorderEventInfo() throws RepositoryException {
+        testRootNode.addNode(nodeName1, testNodeType);
+        testRootNode.addNode(nodeName2, testNodeType);
+        testRootNode.save();
+        EventResult moveNodeListener = new EventResult(log);
+        addEventListener(moveNodeListener, Event.NODE_MOVED);
+        testRootNode.orderBefore(nodeName2, nodeName1);
+        testRootNode.save();
+        Event[] moved = moveNodeListener.getEvents(DEFAULT_WAIT_TIMEOUT);
+        assertEquals(1, moved.length);
+        assertEquals(nodeName2, moved[0].getInfo().get("srcChildRelPath"));
+        assertEquals(nodeName1, moved[0].getInfo().get("destChildRelPath"));
+    }
+
 }

