You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by GitBox <gi...@apache.org> on 2021/01/12 07:14:11 UTC

[GitHub] [sling-org-apache-sling-testing-resourceresolver-mock] stefanseifert commented on a change in pull request #2: SLING-10003 allow to provide mocked search results for findResources and queryResources

stefanseifert commented on a change in pull request #2:
URL: https://github.com/apache/sling-org-apache-sling-testing-resourceresolver-mock/pull/2#discussion_r555555784



##########
File path: src/main/java/org/apache/sling/testing/resourceresolver/MockResourceResolver.java
##########
@@ -447,22 +451,46 @@ public Resource getParent(@NotNull Resource child) {
         return this.getResource(parentPath);
     }
 
+    @Override
+    @SuppressWarnings("null")
+    public @NotNull Iterator<Resource> findResources(final @NotNull String query, final String language) {
+        return findResourcesHandlers.stream()
+            .map(handler -> handler.findResources(query, language))
+            .filter(Objects::nonNull)
+            .findFirst()
+            .orElse(Collections.emptyIterator());
+    }
 
-    // --- unsupported operations ---
+    /**
+     * @param handler Handler that can provide a mocked find resources result.
+     */

Review comment:
       updated docs

##########
File path: src/main/java/org/apache/sling/testing/resourceresolver/MockResourceResolver.java
##########
@@ -447,22 +451,46 @@ public Resource getParent(@NotNull Resource child) {
         return this.getResource(parentPath);
     }
 
+    @Override
+    @SuppressWarnings("null")
+    public @NotNull Iterator<Resource> findResources(final @NotNull String query, final String language) {
+        return findResourcesHandlers.stream()
+            .map(handler -> handler.findResources(query, language))
+            .filter(Objects::nonNull)
+            .findFirst()
+            .orElse(Collections.emptyIterator());
+    }
 
-    // --- unsupported operations ---
+    /**
+     * @param handler Handler that can provide a mocked find resources result.
+     */
+    public void addFindResourceHandler(@NotNull MockFindResourcesHandler handler) {
+        findResourcesHandlers.add(handler);
+    }
 
     @Override
-    @Deprecated
-    public @NotNull Resource resolve(final @NotNull HttpServletRequest request) {
-        throw new UnsupportedOperationException();
+    @SuppressWarnings("null")
+    public @NotNull Iterator<Map<String, Object>> queryResources(@NotNull String query, String language) {
+        return queryResourcesHandlers.stream()
+                .map(handler -> handler.queryResources(query, language))
+                .filter(Objects::nonNull)
+                .findFirst()
+                .orElse(Collections.emptyIterator());
     }
 
-    @Override
-    public @NotNull Iterator<Resource> findResources(final @NotNull String query, final String language) {
-        throw new UnsupportedOperationException();
+    /**
+     * @param handler Handler that can provide a mocked query resources result.
+     */
+    public void addQueryResourceHandler(@NotNull MockQueryResourceHandler handler) {

Review comment:
       updated docs




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org