You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by kw...@apache.org on 2016/02/03 16:37:01 UTC
svn commit: r1728333 - in
/sling/trunk/testing/hamcrest/src/main/java/org/apache/sling/hamcrest/matchers:
ResourceChildrenMatcher.java ResourceMatcher.java
Author: kwin
Date: Wed Feb 3 15:37:01 2016
New Revision: 1728333
URL: http://svn.apache.org/viewvc?rev=1728333&view=rev
Log:
SLING-5481 improve mismatch failure message for Sling Hamcrest matchers
Modified:
sling/trunk/testing/hamcrest/src/main/java/org/apache/sling/hamcrest/matchers/ResourceChildrenMatcher.java
sling/trunk/testing/hamcrest/src/main/java/org/apache/sling/hamcrest/matchers/ResourceMatcher.java
Modified: sling/trunk/testing/hamcrest/src/main/java/org/apache/sling/hamcrest/matchers/ResourceChildrenMatcher.java
URL: http://svn.apache.org/viewvc/sling/trunk/testing/hamcrest/src/main/java/org/apache/sling/hamcrest/matchers/ResourceChildrenMatcher.java?rev=1728333&r1=1728332&r2=1728333&view=diff
==============================================================================
--- sling/trunk/testing/hamcrest/src/main/java/org/apache/sling/hamcrest/matchers/ResourceChildrenMatcher.java (original)
+++ sling/trunk/testing/hamcrest/src/main/java/org/apache/sling/hamcrest/matchers/ResourceChildrenMatcher.java Wed Feb 3 15:37:01 2016
@@ -16,6 +16,7 @@
*/
package org.apache.sling.hamcrest.matchers;
+import java.util.ArrayList;
import java.util.List;
import org.apache.sling.api.resource.Resource;
@@ -48,5 +49,14 @@ public class ResourceChildrenMatcher ext
}
return true;
}
-
+
+ @Override
+ protected void describeMismatchSafely(Resource item, Description mismatchDescription) {
+ List<String> actualChildNames = new ArrayList<String>();
+ for (Resource child : item.getChildren()) {
+ actualChildNames.add(child.getName());
+ }
+ mismatchDescription.appendText("was Resource with children ").appendValueList("[", ",", "]", actualChildNames).appendText(" (resource: ").appendValue(item).appendText(")");
+ }
+
}
\ No newline at end of file
Modified: sling/trunk/testing/hamcrest/src/main/java/org/apache/sling/hamcrest/matchers/ResourceMatcher.java
URL: http://svn.apache.org/viewvc/sling/trunk/testing/hamcrest/src/main/java/org/apache/sling/hamcrest/matchers/ResourceMatcher.java?rev=1728333&r1=1728332&r2=1728333&view=diff
==============================================================================
--- sling/trunk/testing/hamcrest/src/main/java/org/apache/sling/hamcrest/matchers/ResourceMatcher.java (original)
+++ sling/trunk/testing/hamcrest/src/main/java/org/apache/sling/hamcrest/matchers/ResourceMatcher.java Wed Feb 3 15:37:01 2016
@@ -16,6 +16,9 @@
*/
package org.apache.sling.hamcrest.matchers;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
import java.util.Map;
import org.apache.sling.api.resource.Resource;
@@ -54,4 +57,14 @@ public class ResourceMatcher extends Typ
return true;
}
+ @Override
+ protected void describeMismatchSafely(Resource item, Description mismatchDescription) {
+ Map<String, Object> actualProperties = item.adaptTo(ValueMap.class);
+ if (actualProperties == null) {
+ mismatchDescription.appendText("was Resource which does not expose a value map via adaptTo");
+ return;
+ }
+ mismatchDescription.appendText("was Resource with properties ").appendValueList("[", ",", "]", actualProperties.entrySet()).appendText(" (resource: ").appendValue(item).appendText(")");
+ }
+
}
\ No newline at end of file