You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cs...@apache.org on 2019/07/25 11:34:14 UTC

[sling-org-apache-sling-distribution-core] 01/02: SLING-8591 - Simplify ResourceQueueIT

This is an automated email from the ASF dual-hosted git repository.

cschneider pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-distribution-core.git

commit 03bd690070c898f5a7a11eb63dfd5975fecda25a
Author: Christian Schneider <cs...@adobe.com>
AuthorDate: Wed Jul 24 09:34:56 2019 +0200

    SLING-8591 - Simplify ResourceQueueIT
---
 .../sling/distribution/DistributionBaseIT.java     | 60 ++-------------
 .../queue/impl/resource/ResourceQueueIT.java       | 87 ++++++++++------------
 2 files changed, 49 insertions(+), 98 deletions(-)

diff --git a/src/test/java/org/apache/sling/distribution/DistributionBaseIT.java b/src/test/java/org/apache/sling/distribution/DistributionBaseIT.java
index 75a1603..3395960 100644
--- a/src/test/java/org/apache/sling/distribution/DistributionBaseIT.java
+++ b/src/test/java/org/apache/sling/distribution/DistributionBaseIT.java
@@ -19,22 +19,6 @@
 
 package org.apache.sling.distribution;
 
-import org.apache.sling.api.resource.ResourceResolverFactory;
-import org.apache.sling.distribution.agent.impl.PrivilegeDistributionRequestAuthorizationStrategyFactory;
-import org.apache.sling.distribution.agent.impl.QueueDistributionAgentFactory;
-import org.apache.sling.distribution.agent.spi.DistributionAgent;
-import org.apache.sling.distribution.serialization.impl.vlt.VaultDistributionPackageBuilderFactory;
-import org.apache.sling.testing.paxexam.SlingOptions;
-import org.apache.sling.testing.paxexam.TestSupport;
-import org.ops4j.pax.exam.Configuration;
-import org.ops4j.pax.exam.Option;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.Filter;
-import org.osgi.framework.InvalidSyntaxException;
-import org.osgi.framework.ServiceReference;
-
-import javax.inject.Inject;
-
 import static org.apache.sling.testing.paxexam.SlingOptions.logback;
 import static org.apache.sling.testing.paxexam.SlingOptions.slingDistribution;
 import static org.apache.sling.testing.paxexam.SlingOptions.slingQuickstartOakTar;
@@ -43,19 +27,19 @@ import static org.ops4j.pax.exam.CoreOptions.junitBundles;
 import static org.ops4j.pax.exam.cm.ConfigurationAdminOptions.factoryConfiguration;
 import static org.ops4j.pax.exam.cm.ConfigurationAdminOptions.newConfiguration;
 
+import org.apache.sling.distribution.agent.impl.PrivilegeDistributionRequestAuthorizationStrategyFactory;
+import org.apache.sling.distribution.agent.impl.QueueDistributionAgentFactory;
+import org.apache.sling.distribution.serialization.impl.vlt.VaultDistributionPackageBuilderFactory;
+import org.apache.sling.testing.paxexam.SlingOptions;
+import org.apache.sling.testing.paxexam.TestSupport;
+import org.ops4j.pax.exam.Configuration;
+import org.ops4j.pax.exam.Option;
+
 public class DistributionBaseIT extends TestSupport {
 
     protected static final String AGENT_RESOURCE_QUEUE = "agentResourceQueue";
     protected static final String AGENT_JOB_QUEUE = "agentJobQueue";
 
-
-    @Inject
-    protected ResourceResolverFactory resolverFactory;
-
-    @Inject
-    protected BundleContext context;
-
-
     @Configuration
     public Option[] configuration() {
         // Patch versions of features provided by SlingOptions
@@ -119,32 +103,4 @@ public class DistributionBaseIT extends TestSupport {
         );
     }
 
-
-    protected DistributionAgent getAgent(String agentName) {
-
-        for (int i=0; i< 10; i++) {
-            try {
-                Filter filter = context.createFilter("(name="+agentName+")");
-
-                ServiceReference[] srs = this.context.getServiceReferences(DistributionAgent.class.getName(), filter.toString());
-                if (srs == null || srs.length == 0) {
-                    Thread.sleep(1000);
-                    continue;
-                }
-                ServiceReference sr = srs[0];
-
-                Object service = context.getService(sr);
-
-                return (DistributionAgent) service;
-            } catch (InvalidSyntaxException e) {
-
-            } catch (InterruptedException e) {
-            }
-
-
-        }
-
-        return null;
-    }
-
 }
diff --git a/src/test/java/org/apache/sling/distribution/queue/impl/resource/ResourceQueueIT.java b/src/test/java/org/apache/sling/distribution/queue/impl/resource/ResourceQueueIT.java
index dad0fe9..9cbdbb0 100644
--- a/src/test/java/org/apache/sling/distribution/queue/impl/resource/ResourceQueueIT.java
+++ b/src/test/java/org/apache/sling/distribution/queue/impl/resource/ResourceQueueIT.java
@@ -19,8 +19,22 @@
 
 package org.apache.sling.distribution.queue.impl.resource;
 
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.UUID;
+
+import javax.inject.Inject;
+
 import org.apache.sling.api.resource.LoginException;
 import org.apache.sling.api.resource.ResourceResolver;
+import org.apache.sling.api.resource.ResourceResolverFactory;
+import org.apache.sling.distribution.DistributionBaseIT;
 import org.apache.sling.distribution.DistributionRequestType;
 import org.apache.sling.distribution.DistributionResponse;
 import org.apache.sling.distribution.Distributor;
@@ -29,24 +43,13 @@ import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.common.DistributionException;
 import org.apache.sling.distribution.queue.DistributionQueueEntry;
 import org.apache.sling.distribution.queue.DistributionQueueItem;
-import org.apache.sling.distribution.DistributionBaseIT;
 import org.apache.sling.distribution.queue.spi.DistributionQueue;
+import org.junit.After;
+import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
-
-import javax.inject.Inject;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.UUID;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
+import org.ops4j.pax.exam.util.Filter;
 
 @RunWith(PaxExam.class)
 public class ResourceQueueIT extends DistributionBaseIT {
@@ -56,48 +59,49 @@ public class ResourceQueueIT extends DistributionBaseIT {
 
     @Inject
     protected Distributor distributor;
+    
+    @Inject
+    ResourceResolverFactory resolverFactory;
+    
+    @Filter("name=" + AGENT_RESOURCE_QUEUE + ")")
+    @Inject
+    private DistributionAgent agent;
+    
+    private DistributionQueue queue;
 
+    @Before
+    public void getQueue() {
+        queue = agent.getQueue(QUEUE_NAME);
+    }
+    
+    @After
+    public void clear() {
+        for (DistributionQueueEntry entry : queue.getEntries(0, -1)) {
+            queue.remove(entry.getId());
+        }
+    }
 
+    @SuppressWarnings("deprecation")
     @Test
     public void testExecute() throws LoginException, DistributionException {
-
-        DistributionAgent agent = getAgent(AGENT_RESOURCE_QUEUE);
-
-        assertNotNull(agent);
-
         ResourceResolver resourceResolver =  resolverFactory.getAdministrativeResourceResolver(null);
 
-        DistributionResponse response = agent.execute(resourceResolver,
-                new SimpleDistributionRequest(DistributionRequestType.ADD, "/content" ));
-        assertTrue(response.isSuccessful());
-
-        DistributionQueue queue = agent.getQueue(QUEUE_NAME);
+        SimpleDistributionRequest request = new SimpleDistributionRequest(DistributionRequestType.ADD, "/content" );
+        DistributionResponse response = agent.execute(resourceResolver, request);
 
+        assertTrue(response.isSuccessful());
         assertEquals(1, queue.getStatus().getItemsCount());
-
-        clear(queue);
-
     }
 
 
     @Test
     public void testFifo() {
-        DistributionAgent agent = getAgent(AGENT_RESOURCE_QUEUE);
-
-        DistributionQueue queue = agent.getQueue(QUEUE_NAME);
-
         queue.add(new DistributionQueueItem("packageId", 10, new HashMap<String, Object>()));
-
         assertEquals(1, queue.getStatus().getItemsCount());
-
-        clear(queue);
     }
 
     @Test
     public void testConcurrentFifo () throws InterruptedException {
-        final DistributionAgent agent = getAgent(AGENT_RESOURCE_QUEUE);
-        final DistributionQueue queue = agent.getQueue(QUEUE_NAME);
-
         Producer p1 = new Producer(queue, "p1");
         Producer p2 = new Producer(queue, "p2");
         Producer p3 = new Producer(queue, "p3");
@@ -144,14 +148,6 @@ public class ResourceQueueIT extends DistributionBaseIT {
         }
 
         assertEquals(0, queue.getStatus().getItemsCount());
-
-        clear(queue);
-    }
-
-    void clear(DistributionQueue queue) {
-        for (DistributionQueueEntry entry : queue.getEntries(0, -1)) {
-            queue.remove(entry.getId());
-        }
     }
 
     class Producer implements Runnable {
@@ -164,7 +160,6 @@ public class ResourceQueueIT extends DistributionBaseIT {
             this.name = name;
         }
 
-
         public void run() {
             for(int i=0; i<ITERATIONS; i++) {