You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by cs...@apache.org on 2017/07/19 07:37:15 UTC

karaf-decanter git commit: Remove duplications in tests

Repository: karaf-decanter
Updated Branches:
  refs/heads/master 029a6df5c -> d54157555


Remove duplications in tests


Project: http://git-wip-us.apache.org/repos/asf/karaf-decanter/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf-decanter/commit/d5415755
Tree: http://git-wip-us.apache.org/repos/asf/karaf-decanter/tree/d5415755
Diff: http://git-wip-us.apache.org/repos/asf/karaf-decanter/diff/d5415755

Branch: refs/heads/master
Commit: d541575550bafbe4ee7578935fadc399e1d3ac95
Parents: 029a6df
Author: Christian Schneider <ch...@die-schneider.net>
Authored: Wed Jul 19 09:37:10 2017 +0200
Committer: Christian Schneider <ch...@die-schneider.net>
Committed: Wed Jul 19 09:37:10 2017 +0200

----------------------------------------------------------------------
 .../camel/DecanterEventNotifierTest.java        | 111 ++++---------------
 .../camel/DecanterTraceEventHandlerTest.java    |  93 +++++-----------
 .../collector/camel/MockEventAdmin.java         |  48 ++++++++
 3 files changed, 96 insertions(+), 156 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/karaf-decanter/blob/d5415755/collector/camel/src/test/java/org/apache/karaf/decanter/collector/camel/DecanterEventNotifierTest.java
----------------------------------------------------------------------
diff --git a/collector/camel/src/test/java/org/apache/karaf/decanter/collector/camel/DecanterEventNotifierTest.java b/collector/camel/src/test/java/org/apache/karaf/decanter/collector/camel/DecanterEventNotifierTest.java
index 0a04e4e..6916bc1 100644
--- a/collector/camel/src/test/java/org/apache/karaf/decanter/collector/camel/DecanterEventNotifierTest.java
+++ b/collector/camel/src/test/java/org/apache/karaf/decanter/collector/camel/DecanterEventNotifierTest.java
@@ -24,32 +24,18 @@ import org.apache.camel.management.event.*;
 import org.junit.Assert;
 import org.junit.Test;
 import org.osgi.service.event.Event;
-import org.osgi.service.event.EventAdmin;
 
-import java.util.ArrayList;
-import java.util.List;
 import java.util.Map;
 
 public class DecanterEventNotifierTest {
 
     @Test
     public void testEventNotifier() throws Exception {
-        DispatcherMock eventAdmin = new DispatcherMock();
+        MockEventAdmin eventAdmin = new MockEventAdmin();
         DecanterEventNotifier notifier = new DecanterEventNotifier();
         notifier.setEventAdmin(eventAdmin);
 
-        RouteBuilder builder = new RouteBuilder() {
-            @Override
-            public void configure() throws Exception {
-                from("direct:start").routeId("test-route").to("log:foo");
-            }
-        };
-
-        DefaultCamelContext camelContext = new DefaultCamelContext();
-        camelContext.setName("test-context");
-        camelContext.addRoutes(builder);
-        camelContext.getManagementStrategy().addEventNotifier(notifier);
-        camelContext.start();
+        DefaultCamelContext camelContext = createCamelContext(notifier);
 
         ProducerTemplate producerTemplate = camelContext.createProducerTemplate();
         producerTemplate.sendBodyAndHeader("direct:start", "TEST", "foo", "bar");
@@ -96,23 +82,12 @@ public class DecanterEventNotifierTest {
 
     @Test
     public void testCamelContextFilter() throws Exception {
-        DispatcherMock eventAdmin = new DispatcherMock();
+        MockEventAdmin eventAdmin = new MockEventAdmin();
         DecanterEventNotifier notifier = new DecanterEventNotifier();
         notifier.setEventAdmin(eventAdmin);
         notifier.setCamelContextMatcher("foo");
 
-        RouteBuilder builder = new RouteBuilder() {
-            @Override
-            public void configure() throws Exception {
-                from("direct:start").routeId("test-route").to("log:foo");
-            }
-        };
-
-        DefaultCamelContext camelContext = new DefaultCamelContext();
-        camelContext.setName("test-context");
-        camelContext.addRoutes(builder);
-        camelContext.getManagementStrategy().addEventNotifier(notifier);
-        camelContext.start();
+        DefaultCamelContext camelContext = createCamelContext(notifier);
 
         ProducerTemplate producerTemplate = camelContext.createProducerTemplate();
         producerTemplate.sendBodyAndHeader("direct:start", "TEST", "foo", "bar");
@@ -122,24 +97,13 @@ public class DecanterEventNotifierTest {
 
     @Test
     public void testRouteIdFilter() throws Exception {
-        DispatcherMock eventAdmin = new DispatcherMock();
+        MockEventAdmin eventAdmin = new MockEventAdmin();
         DecanterEventNotifier notifier = new DecanterEventNotifier();
         notifier.setEventAdmin(eventAdmin);
         notifier.setCamelContextMatcher(".*");
         notifier.setRouteMatcher("foo");
 
-        RouteBuilder builder = new RouteBuilder() {
-            @Override
-            public void configure() throws Exception {
-                from("direct:start").routeId("test-route").to("log:foo");
-            }
-        };
-
-        DefaultCamelContext camelContext = new DefaultCamelContext();
-        camelContext.setName("test-context");
-        camelContext.addRoutes(builder);
-        camelContext.getManagementStrategy().addEventNotifier(notifier);
-        camelContext.start();
+        DefaultCamelContext camelContext = createCamelContext(notifier);
 
         ProducerTemplate producerTemplate = camelContext.createProducerTemplate();
         producerTemplate.sendBodyAndHeader("direct:start", "TEST", "foo", "bar");
@@ -149,23 +113,12 @@ public class DecanterEventNotifierTest {
 
     @Test
     public void testIgnoredEvents() throws Exception {
-        DispatcherMock eventAdmin = new DispatcherMock();
+        MockEventAdmin eventAdmin = new MockEventAdmin();
         DecanterEventNotifier notifier = new DecanterEventNotifier();
         notifier.setEventAdmin(eventAdmin);
         notifier.setIgnoreCamelContextEvents(true);
 
-        RouteBuilder builder = new RouteBuilder() {
-            @Override
-            public void configure() throws Exception {
-                from("direct:start").routeId("test-route").to("log:foo");
-            }
-        };
-
-        DefaultCamelContext camelContext = new DefaultCamelContext();
-        camelContext.setName("test-context");
-        camelContext.addRoutes(builder);
-        camelContext.getManagementStrategy().addEventNotifier(notifier);
-        camelContext.start();
+        DefaultCamelContext camelContext = createCamelContext(notifier);
 
         ProducerTemplate producerTemplate = camelContext.createProducerTemplate();
         producerTemplate.sendBodyAndHeader("direct:start", "TEST", "foo", "bar");
@@ -175,57 +128,37 @@ public class DecanterEventNotifierTest {
 
     @Test
     public void testExtender() throws Exception {
-        DispatcherMock eventAdmin = new DispatcherMock();
+        MockEventAdmin eventAdmin = new MockEventAdmin();
         DecanterEventNotifier notifier = new DecanterEventNotifier();
         notifier.setIgnoreCamelContextEvents(true);
         notifier.setIgnoreRouteEvents(true);
         notifier.setEventAdmin(eventAdmin);
         notifier.setExtender(new TestExtender());
 
+        DefaultCamelContext camelContext = createCamelContext(notifier);
+
+        ProducerTemplate producerTemplate = camelContext.createProducerTemplate();
+        producerTemplate.sendBodyAndHeader("direct:start", "TEST", "foo", "bar");
+
+        Assert.assertEquals(6, eventAdmin.getPostEvents().size());
+
+        Assert.assertEquals("test", eventAdmin.getPostEvents().get(0).getProperty("extender-test"));
+    }
+
+    private DefaultCamelContext createCamelContext(DecanterEventNotifier notifier) throws Exception {
         RouteBuilder builder = new RouteBuilder() {
             @Override
             public void configure() throws Exception {
                 from("direct:start").routeId("test-route").to("log:foo");
             }
         };
-
+    
         DefaultCamelContext camelContext = new DefaultCamelContext();
         camelContext.setName("test-context");
         camelContext.addRoutes(builder);
         camelContext.getManagementStrategy().addEventNotifier(notifier);
         camelContext.start();
-
-        ProducerTemplate producerTemplate = camelContext.createProducerTemplate();
-        producerTemplate.sendBodyAndHeader("direct:start", "TEST", "foo", "bar");
-
-        Assert.assertEquals(6, eventAdmin.getPostEvents().size());
-
-        Assert.assertEquals("test", eventAdmin.getPostEvents().get(0).getProperty("extender-test"));
-    }
-
-    private class DispatcherMock implements EventAdmin {
-
-        private List<Event> postEvents = new ArrayList<>();
-        private List<Event> sendEvents = new ArrayList<>();
-
-        @Override
-        public void postEvent(Event event) {
-            postEvents.add(event);
-        }
-
-        @Override
-        public void sendEvent(Event event) {
-            System.out.println("SEND EVENT");
-            sendEvents.add(event);
-        }
-
-        public List<Event> getPostEvents() {
-            return postEvents;
-        }
-
-        public List<Event> getSendEvents() {
-            return sendEvents;
-        }
+        return camelContext;
     }
 
     private class TestExtender implements DecanterCamelEventExtender {

http://git-wip-us.apache.org/repos/asf/karaf-decanter/blob/d5415755/collector/camel/src/test/java/org/apache/karaf/decanter/collector/camel/DecanterTraceEventHandlerTest.java
----------------------------------------------------------------------
diff --git a/collector/camel/src/test/java/org/apache/karaf/decanter/collector/camel/DecanterTraceEventHandlerTest.java b/collector/camel/src/test/java/org/apache/karaf/decanter/collector/camel/DecanterTraceEventHandlerTest.java
index 7d8aa6f..38321c2 100644
--- a/collector/camel/src/test/java/org/apache/karaf/decanter/collector/camel/DecanterTraceEventHandlerTest.java
+++ b/collector/camel/src/test/java/org/apache/karaf/decanter/collector/camel/DecanterTraceEventHandlerTest.java
@@ -16,53 +16,34 @@
  */
 package org.apache.karaf.decanter.collector.camel;
 
+import java.io.StringReader;
+import java.util.Map;
+
+import javax.json.Json;
+import javax.json.JsonObject;
+import javax.json.JsonReader;
+
 import org.apache.camel.Exchange;
 import org.apache.camel.LoggingLevel;
 import org.apache.camel.ProducerTemplate;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.impl.DefaultCamelContext;
+import org.apache.camel.processor.interceptor.TraceEventHandler;
 import org.apache.camel.processor.interceptor.Tracer;
 import org.apache.karaf.decanter.marshaller.json.JsonMarshaller;
 import org.junit.Assert;
 import org.junit.Test;
 import org.osgi.service.event.Event;
-import org.osgi.service.event.EventAdmin;
-
-import javax.json.Json;
-import javax.json.JsonObject;
-import javax.json.JsonReader;
-import java.io.StringReader;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
 
 public class DecanterTraceEventHandlerTest {
 
     @Test
     public void testTracer() throws Exception {
         JsonMarshaller marshaller = new JsonMarshaller();
-
-        DispatcherMock eventAdmin = new DispatcherMock();
-
-        RouteBuilder builder = new RouteBuilder() {
-            @Override
-            public void configure() throws Exception {
-                from("direct:start").routeId("test-route").to("log:foo");
-            }
-        };
-        DefaultCamelContext camelContext = new DefaultCamelContext();
-        camelContext.setName("test-context");
-        camelContext.addRoutes(builder);
-        Tracer tracer = new Tracer();
-        tracer.setEnabled(true);
-        tracer.setTraceOutExchanges(true);
-        tracer.setLogLevel(LoggingLevel.OFF);
+        MockEventAdmin eventAdmin = new MockEventAdmin();
         DecanterTraceEventHandler handler = new DecanterTraceEventHandler();
         handler.setEventAdmin(eventAdmin);
-        tracer.addTraceHandler(handler);
-        camelContext.setTracing(true);
-        camelContext.setDefaultTracer(tracer);
-        camelContext.start();
+        DefaultCamelContext camelContext = createCamelContext(handler);
 
         ProducerTemplate template = camelContext.createProducerTemplate();
         template.sendBodyAndHeader("direct:start", "TEST", "header", "test");
@@ -90,10 +71,23 @@ public class DecanterTraceEventHandlerTest {
 
     @Test
     public void testTracerWithExtender() throws Exception {
-        DispatcherMock eventAdmin = new DispatcherMock();
-
+        MockEventAdmin eventAdmin = new MockEventAdmin();
         TestExtender extender = new TestExtender();
+        DecanterTraceEventHandler handler = new DecanterTraceEventHandler();
+        handler.setExtender(extender);
+        handler.setEventAdmin(eventAdmin);
+        DefaultCamelContext camelContext = createCamelContext(handler);
 
+        ProducerTemplate template = camelContext.createProducerTemplate();
+        template.sendBodyAndHeader("direct:start", "TEST", "header", "test");
+
+        Assert.assertEquals(2, eventAdmin.getPostEvents().size());
+
+        Assert.assertEquals("test", eventAdmin.getPostEvents().get(0).getProperty("extender-test"));
+        Assert.assertEquals("test", eventAdmin.getPostEvents().get(1).getProperty("extender-test"));
+    }
+
+    private DefaultCamelContext createCamelContext(TraceEventHandler handler) throws Exception {
         RouteBuilder builder = new RouteBuilder() {
             @Override
             public void configure() throws Exception {
@@ -107,46 +101,11 @@ public class DecanterTraceEventHandlerTest {
         tracer.setEnabled(true);
         tracer.setTraceOutExchanges(true);
         tracer.setLogLevel(LoggingLevel.OFF);
-        DecanterTraceEventHandler handler = new DecanterTraceEventHandler();
-        handler.setExtender(extender);
-        handler.setEventAdmin(eventAdmin);
         tracer.addTraceHandler(handler);
         camelContext.setTracing(true);
         camelContext.setDefaultTracer(tracer);
         camelContext.start();
-
-        ProducerTemplate template = camelContext.createProducerTemplate();
-        template.sendBodyAndHeader("direct:start", "TEST", "header", "test");
-
-        Assert.assertEquals(2, eventAdmin.getPostEvents().size());
-
-        Assert.assertEquals("test", eventAdmin.getPostEvents().get(0).getProperty("extender-test"));
-        Assert.assertEquals("test", eventAdmin.getPostEvents().get(1).getProperty("extender-test"));
-    }
-
-    private class DispatcherMock implements EventAdmin {
-
-        private List<Event> postEvents = new ArrayList<>();
-        private List<Event> sendEvents = new ArrayList<>();
-
-        @Override
-        public void postEvent(Event event) {
-            postEvents.add(event);
-        }
-
-        @Override
-        public void sendEvent(Event event) {
-            System.out.println("SEND EVENT");
-            sendEvents.add(event);
-        }
-
-        public List<Event> getPostEvents() {
-            return postEvents;
-        }
-
-        public List<Event> getSendEvents() {
-            return sendEvents;
-        }
+        return camelContext;
     }
 
     private class TestExtender implements DecanterCamelEventExtender {

http://git-wip-us.apache.org/repos/asf/karaf-decanter/blob/d5415755/collector/camel/src/test/java/org/apache/karaf/decanter/collector/camel/MockEventAdmin.java
----------------------------------------------------------------------
diff --git a/collector/camel/src/test/java/org/apache/karaf/decanter/collector/camel/MockEventAdmin.java b/collector/camel/src/test/java/org/apache/karaf/decanter/collector/camel/MockEventAdmin.java
new file mode 100644
index 0000000..6adad42
--- /dev/null
+++ b/collector/camel/src/test/java/org/apache/karaf/decanter/collector/camel/MockEventAdmin.java
@@ -0,0 +1,48 @@
+/*
+ * 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.karaf.decanter.collector.camel;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.osgi.service.event.Event;
+import org.osgi.service.event.EventAdmin;
+
+class MockEventAdmin implements EventAdmin {
+
+    private List<Event> postEvents = new ArrayList<>();
+    private List<Event> sendEvents = new ArrayList<>();
+
+    @Override
+    public void postEvent(Event event) {
+        postEvents.add(event);
+    }
+
+    @Override
+    public void sendEvent(Event event) {
+        System.out.println("SEND EVENT");
+        sendEvents.add(event);
+    }
+
+    public List<Event> getPostEvents() {
+        return postEvents;
+    }
+
+    public List<Event> getSendEvents() {
+        return sendEvents;
+    }
+}
\ No newline at end of file