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 2017/03/02 13:27:51 UTC

svn commit: r1785131 [2/2] - in /sling/trunk/bundles/extensions/validation: api/src/main/java/org/apache/sling/validation/model/ api/src/main/java/org/apache/sling/validation/model/spi/ core/ core/src/main/java/org/apache/sling/validation/impl/ core/sr...

Added: sling/trunk/bundles/extensions/validation/core/src/test/java/org/apache/sling/validation/impl/util/ChildResourceNameRegexMatcher.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/validation/core/src/test/java/org/apache/sling/validation/impl/util/ChildResourceNameRegexMatcher.java?rev=1785131&view=auto
==============================================================================
--- sling/trunk/bundles/extensions/validation/core/src/test/java/org/apache/sling/validation/impl/util/ChildResourceNameRegexMatcher.java (added)
+++ sling/trunk/bundles/extensions/validation/core/src/test/java/org/apache/sling/validation/impl/util/ChildResourceNameRegexMatcher.java Thu Mar  2 13:27:50 2017
@@ -0,0 +1,52 @@
+/*
+ * 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.sling.validation.impl.util;
+
+import java.util.regex.Pattern;
+
+import org.apache.sling.validation.model.ChildResource;
+import org.hamcrest.Description;
+import org.hamcrest.TypeSafeMatcher;
+
+/**
+ * Custom Hamcrest matcher which matches ChildResource based on the equality only on their namePatterns.
+ */
+public class ChildResourceNameRegexMatcher extends TypeSafeMatcher<ChildResource> {
+
+    private final String expectedNameRegex;
+
+    public ChildResourceNameRegexMatcher(String nameRegex) {
+        expectedNameRegex = nameRegex;
+    }
+
+    @Override
+    public void describeTo(Description description) {
+        description.appendText("ChildResource with namePattern=" + expectedNameRegex);
+    }
+
+    @Override
+    protected boolean matchesSafely(ChildResource childResource) {
+        Pattern namePattern = childResource.getNamePattern();
+        if (namePattern == null) {
+            return false;
+        } else {
+            return expectedNameRegex.equals(namePattern.toString());
+        }
+    }
+}
\ No newline at end of file

Propchange: sling/trunk/bundles/extensions/validation/core/src/test/java/org/apache/sling/validation/impl/util/ChildResourceNameRegexMatcher.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: sling/trunk/bundles/extensions/validation/core/src/test/java/org/apache/sling/validation/impl/util/ResourcePropertyNameMatcher.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/validation/core/src/test/java/org/apache/sling/validation/impl/util/ResourcePropertyNameMatcher.java?rev=1785131&view=auto
==============================================================================
--- sling/trunk/bundles/extensions/validation/core/src/test/java/org/apache/sling/validation/impl/util/ResourcePropertyNameMatcher.java (added)
+++ sling/trunk/bundles/extensions/validation/core/src/test/java/org/apache/sling/validation/impl/util/ResourcePropertyNameMatcher.java Thu Mar  2 13:27:50 2017
@@ -0,0 +1,45 @@
+/*
+ * 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.sling.validation.impl.util;
+
+import org.apache.sling.validation.model.ResourceProperty;
+import org.hamcrest.Description;
+import org.hamcrest.TypeSafeMatcher;
+
+/**
+ * Custom Hamcrest matcher which matches Resource Properties based on the equality only on their name.
+ */
+public class ResourcePropertyNameMatcher extends TypeSafeMatcher<ResourceProperty> {
+
+    private final String expectedName;
+
+    public ResourcePropertyNameMatcher(String name) {
+        expectedName = name;
+    }
+
+    @Override
+    public void describeTo(Description description) {
+        description.appendText("ResourceProperty with name=" + expectedName);
+    }
+
+    @Override
+    protected boolean matchesSafely(ResourceProperty resourceProperty) {
+       return expectedName.equals(resourceProperty.getName());
+    }
+}
\ No newline at end of file

Propchange: sling/trunk/bundles/extensions/validation/core/src/test/java/org/apache/sling/validation/impl/util/ResourcePropertyNameMatcher.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: sling/trunk/bundles/extensions/validation/core/src/test/java/org/apache/sling/validation/impl/util/ResourcePropertyNameRegexMatcher.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/validation/core/src/test/java/org/apache/sling/validation/impl/util/ResourcePropertyNameRegexMatcher.java?rev=1785131&view=auto
==============================================================================
--- sling/trunk/bundles/extensions/validation/core/src/test/java/org/apache/sling/validation/impl/util/ResourcePropertyNameRegexMatcher.java (added)
+++ sling/trunk/bundles/extensions/validation/core/src/test/java/org/apache/sling/validation/impl/util/ResourcePropertyNameRegexMatcher.java Thu Mar  2 13:27:50 2017
@@ -0,0 +1,53 @@
+/*
+ * 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.sling.validation.impl.util;
+
+import java.util.regex.Pattern;
+
+import org.apache.sling.validation.model.ResourceProperty;
+import org.hamcrest.Description;
+import org.hamcrest.TypeSafeMatcher;
+
+/**
+ * Custom Hamcrest matcher which matches Resource Properties based on the equality only on their namePatterns.
+ */
+public class ResourcePropertyNameRegexMatcher extends TypeSafeMatcher<ResourceProperty> {
+
+    private final String expectedNameRegex;
+
+    public ResourcePropertyNameRegexMatcher(String nameRegex) {
+        expectedNameRegex = nameRegex;
+    }
+
+    @Override
+    public void describeTo(Description description) {
+        description.appendText("ResourceProperty with namePattern=" + expectedNameRegex);
+    }
+
+    @Override
+    protected boolean matchesSafely(ResourceProperty resourceProperty) {
+        Pattern namePattern = resourceProperty.getNamePattern();
+        if (namePattern == null) {
+            return false;
+        } else {
+            return expectedNameRegex.equals(namePattern.toString());
+        }
+    }
+
+}
\ No newline at end of file

Propchange: sling/trunk/bundles/extensions/validation/core/src/test/java/org/apache/sling/validation/impl/util/ResourcePropertyNameRegexMatcher.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain