Author: marrs
Date: Tue Nov 24 12:25:37 2009
New Revision: 883668

URL: http://svn.apache.org/viewvc?rev=883668&view=rev
Log:
refactored existing tests to use static inner classes to avoid potential name 
clashes between tests, added a new test

Added:
    
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/MultipleServiceDependencyTest.java
Modified:
    
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/ComponentLifeCycleTest.java
    
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/ConfigurationDependencyTest.java
    
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/ServiceDependencyTest.java
    
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/TemporalServiceDependencyTest.java

Modified: 
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/ComponentLifeCycleTest.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/ComponentLifeCycleTest.java?rev=883668&r1=883667&r2=883668&view=diff
==============================================================================
--- 
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/ComponentLifeCycleTest.java
 (original)
+++ 
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/ComponentLifeCycleTest.java
 Tue Nov 24 12:25:37 2009
@@ -73,44 +73,44 @@
         // ensure we executed all steps inside the component instance
         e.step(6);
     }
-}
 
-class ComponentInstance {
-    private final Ensure m_ensure;
-    public ComponentInstance(Ensure e) {
-        m_ensure = e;
-        m_ensure.step(1);
-    }
-    public void init() {
-        m_ensure.step(2);
-    }
-    public void start() {
-        m_ensure.step(3);
-    }
-    public void stop() {
-        m_ensure.step(4);
-    }
-    public void destroy() {
-        m_ensure.step(5);
+    static class ComponentInstance {
+        private final Ensure m_ensure;
+        public ComponentInstance(Ensure e) {
+            m_ensure = e;
+            m_ensure.step(1);
+        }
+        public void init() {
+            m_ensure.step(2);
+        }
+        public void start() {
+            m_ensure.step(3);
+        }
+        public void stop() {
+            m_ensure.step(4);
+        }
+        public void destroy() {
+            m_ensure.step(5);
+        }
     }
-}
 
-class CustomComponentInstance {
-    private final Ensure m_ensure;
-    public CustomComponentInstance(Ensure e) {
-        m_ensure = e;
-        m_ensure.step(1);
-    }
-    public void a() {
-        m_ensure.step(2);
-    }
-    public void b() {
-        m_ensure.step(3);
-    }
-    public void c() {
-        m_ensure.step(4);
-    }
-    public void d() {
-        m_ensure.step(5);
+    static class CustomComponentInstance {
+        private final Ensure m_ensure;
+        public CustomComponentInstance(Ensure e) {
+            m_ensure = e;
+            m_ensure.step(1);
+        }
+        public void a() {
+            m_ensure.step(2);
+        }
+        public void b() {
+            m_ensure.step(3);
+        }
+        public void c() {
+            m_ensure.step(4);
+        }
+        public void d() {
+            m_ensure.step(5);
+        }
     }
 }

Modified: 
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/ConfigurationDependencyTest.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/ConfigurationDependencyTest.java?rev=883668&r1=883667&r2=883668&view=diff
==============================================================================
--- 
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/ConfigurationDependencyTest.java
 (original)
+++ 
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/ConfigurationDependencyTest.java
 Tue Nov 24 12:25:37 2009
@@ -73,61 +73,61 @@
         // ensure we executed all steps inside the component instance
         e.step(5);
     }
-}
-
-class ConfigurationCreator {
-    private volatile ConfigurationAdmin m_ca;
-    private final Ensure m_ensure;
-    
-    public ConfigurationCreator(Ensure e) {
-        m_ensure = e;
-    }
 
-    public void start() {
-        try {
-            m_ensure.step(1);
-            org.osgi.service.cm.Configuration conf = 
m_ca.getConfiguration("test", null);
-            Properties props = new Properties();
-            props.put("testkey", "testvalue");
-            conf.update(props);
+    static class ConfigurationCreator {
+        private volatile ConfigurationAdmin m_ca;
+        private final Ensure m_ensure;
+        
+        public ConfigurationCreator(Ensure e) {
+            m_ensure = e;
         }
-        catch (IOException e) {
-            Assert.fail("Could not create configuration: " + e.getMessage());
+
+        public void start() {
+            try {
+                m_ensure.step(1);
+                org.osgi.service.cm.Configuration conf = 
m_ca.getConfiguration("test", null);
+                Properties props = new Properties();
+                props.put("testkey", "testvalue");
+                conf.update(props);
+            }
+            catch (IOException e) {
+                Assert.fail("Could not create configuration: " + 
e.getMessage());
+            }
         }
     }
-}
 
-class ConfigurationConsumer implements ManagedService, Runnable {
-    private final Ensure m_ensure;
+    static class ConfigurationConsumer implements ManagedService, Runnable {
+        private final Ensure m_ensure;
 
-    public ConfigurationConsumer(Ensure e) {
-        m_ensure = e;
-    }
+        public ConfigurationConsumer(Ensure e) {
+            m_ensure = e;
+        }
 
-    public void updated(Dictionary props) throws ConfigurationException {
-        if (props != null) {
-            m_ensure.step(2);
-            if (!"testvalue".equals(props.get("testkey"))) {
-                Assert.fail("Could not find the configured property.");
+        public void updated(Dictionary props) throws ConfigurationException {
+            if (props != null) {
+                m_ensure.step(2);
+                if (!"testvalue".equals(props.get("testkey"))) {
+                    Assert.fail("Could not find the configured property.");
+                }
             }
         }
+        
+        public void run() {
+            m_ensure.step(4);
+        }
     }
-    
-    public void run() {
-        m_ensure.step(4);
-    }
-}
 
-class ConfiguredServiceConsumer {
-    private final Ensure m_ensure;
-    private volatile Runnable m_runnable;
+    static class ConfiguredServiceConsumer {
+        private final Ensure m_ensure;
+        private volatile Runnable m_runnable;
 
-    public ConfiguredServiceConsumer(Ensure e) {
-        m_ensure = e;
-    }
-    
-    public void start() {
-        m_ensure.step(3);
-        m_runnable.run();
+        public ConfiguredServiceConsumer(Ensure e) {
+            m_ensure = e;
+        }
+        
+        public void start() {
+            m_ensure.step(3);
+            m_runnable.run();
+        }
     }
 }

Added: 
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/MultipleServiceDependencyTest.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/MultipleServiceDependencyTest.java?rev=883668&view=auto
==============================================================================
--- 
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/MultipleServiceDependencyTest.java
 (added)
+++ 
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/MultipleServiceDependencyTest.java
 Tue Nov 24 12:25:37 2009
@@ -0,0 +1,102 @@
+package org.apache.felix.dependencymanager.test;
+
+import static org.ops4j.pax.exam.CoreOptions.mavenBundle;
+import static org.ops4j.pax.exam.CoreOptions.options;
+import static org.ops4j.pax.exam.CoreOptions.provision;
+
+import java.util.Properties;
+
+import org.apache.felix.dependencymanager.DependencyManager;
+import org.apache.felix.dependencymanager.Logger;
+import org.apache.felix.dependencymanager.Service;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.ops4j.pax.exam.Option;
+import org.ops4j.pax.exam.junit.Configuration;
+import org.ops4j.pax.exam.junit.JUnit4TestRunner;
+import org.osgi.framework.BundleContext;
+import org.osgi.framework.Constants;
+
+...@runwith(JUnit4TestRunner.class)
+public class MultipleServiceDependencyTest {
+    @Configuration
+    public static Option[] configuration() {
+        return options(
+            provision(
+                
mavenBundle().groupId("org.apache.felix").artifactId("org.osgi.compendium").versionAsInProject(),
+                
mavenBundle().groupId("org.apache.felix").artifactId("org.apache.felix.dependencymanager").versionAsInProject()
+            )
+        );
+    }    
+
+    @Test
+    public void testMultipleServiceRegistrationAndConsumption(BundleContext 
context) {
+        DependencyManager m = new DependencyManager(context, new 
Logger(context));
+        // helper class that ensures certain steps get executed in sequence
+        Ensure e = new Ensure();
+        // create a service provider and consumer
+        Service provider = m.createService().setImplementation(new 
ServiceProvider(e)).setInterface(ServiceInterface.class.getName(), null);
+        Service providerWithHighRank = m.createService().setImplementation(new 
ServiceProvider2(e)).setInterface(ServiceInterface.class.getName(), new 
Properties() {{ put(Constants.SERVICE_RANKING, Integer.valueOf(5)); }});
+        Service consumer = m.createService().setImplementation(new 
ServiceConsumer(e)).add(m.createServiceDependency().setService(ServiceInterface.class).setRequired(true));
+        m.add(provider);
+        m.add(providerWithHighRank);
+        m.add(consumer);
+        e.waitForStep(3, 1000);
+        m.remove(providerWithHighRank);
+        e.step(4);
+        e.waitForStep(5, 1000);
+        m.remove(provider);
+        m.remove(consumer);
+        e.waitForStep(6, 1000);
+    }
+    
+    static interface ServiceInterface {
+        public void invoke();
+    }
+
+    static class ServiceProvider implements ServiceInterface {
+        private final Ensure m_ensure;
+        public ServiceProvider(Ensure e) {
+            m_ensure = e;
+        }
+        public void invoke() {
+            m_ensure.step(5);
+        }
+    }
+
+    static class ServiceProvider2 implements ServiceInterface {
+        private final Ensure m_ensure;
+        public ServiceProvider2(Ensure e) {
+            m_ensure = e;
+        }
+        public void invoke() {
+            m_ensure.step(2);
+        }
+    }
+
+    static class ServiceConsumer implements Runnable {
+        private volatile ServiceInterface m_service;
+        private final Ensure m_ensure;
+
+        public ServiceConsumer(Ensure e) {
+            m_ensure = e;
+        }
+        
+        public void start() {
+            Thread t = new Thread(this);
+            t.start();
+        }
+        
+        public void run() {
+            m_ensure.step(1);
+            m_service.invoke();
+            m_ensure.step(3);
+            m_ensure.waitForStep(4, 1000);
+            m_service.invoke();
+        }
+        
+        public void stop() {
+            m_ensure.step(6);
+        }
+    }
+}

Modified: 
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/ServiceDependencyTest.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/ServiceDependencyTest.java?rev=883668&r1=883667&r2=883668&view=diff
==============================================================================
--- 
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/ServiceDependencyTest.java
 (original)
+++ 
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/ServiceDependencyTest.java
 Tue Nov 24 12:25:37 2009
@@ -62,51 +62,51 @@
         // ensure we executed all steps inside the component instance
         e.step(6);
     }
-}
-
-interface ServiceInterface {
-    public void invoke();
-}
-
-class ServiceProvider implements ServiceInterface {
-    private final Ensure m_ensure;
-    public ServiceProvider(Ensure e) {
-        m_ensure = e;
-    }
-    public void invoke() {
-        m_ensure.step(2);
-    }
-}
-
-class ServiceConsumer {
-    private volatile ServiceInterface m_service;
-    private final Ensure m_ensure;
-
-    public ServiceConsumer(Ensure e) {
-        m_ensure = e;
-    }
-    
-    public void start() {
-        m_ensure.step(1);
-        m_service.invoke();
-    }
     
-    public void stop() {
-        m_ensure.step(3);
+    static interface ServiceInterface {
+        public void invoke();
     }
-}
 
-class ServiceConsumerCallbacks {
-    private final Ensure m_ensure;
-
-    public ServiceConsumerCallbacks(Ensure e) {
-        m_ensure = e;
-    }
-    
-    public void add(ServiceInterface service) {
-        m_ensure.step(4);
-    }
-    public void remove(ServiceInterface service) {
-        m_ensure.step(5);
+    static class ServiceProvider implements ServiceInterface {
+        private final Ensure m_ensure;
+        public ServiceProvider(Ensure e) {
+            m_ensure = e;
+        }
+        public void invoke() {
+            m_ensure.step(2);
+        }
+    }
+
+    static class ServiceConsumer {
+        private volatile ServiceInterface m_service;
+        private final Ensure m_ensure;
+
+        public ServiceConsumer(Ensure e) {
+            m_ensure = e;
+        }
+        
+        public void start() {
+            m_ensure.step(1);
+            m_service.invoke();
+        }
+        
+        public void stop() {
+            m_ensure.step(3);
+        }
+    }
+
+    static class ServiceConsumerCallbacks {
+        private final Ensure m_ensure;
+
+        public ServiceConsumerCallbacks(Ensure e) {
+            m_ensure = e;
+        }
+        
+        public void add(ServiceInterface service) {
+            m_ensure.step(4);
+        }
+        public void remove(ServiceInterface service) {
+            m_ensure.step(5);
+        }
     }
 }

Modified: 
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/TemporalServiceDependencyTest.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/TemporalServiceDependencyTest.java?rev=883668&r1=883667&r2=883668&view=diff
==============================================================================
--- 
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/TemporalServiceDependencyTest.java
 (original)
+++ 
felix/trunk/dependencymanager/test/src/test/java/org/apache/felix/dependencymanager/test/TemporalServiceDependencyTest.java
 Tue Nov 24 12:25:37 2009
@@ -71,53 +71,53 @@
         // ensure we executed all steps inside the component instance
         e.step(6);
     }
-}
-
-interface TemporalServiceInterface {
-    public void invoke();
-}
 
-class TemporalServiceProvider implements TemporalServiceInterface {
-    private final Ensure m_ensure;
-    public TemporalServiceProvider(Ensure e) {
-        m_ensure = e;
+    static interface TemporalServiceInterface {
+        public void invoke();
     }
-    public void invoke() {
-        m_ensure.step(2);
-    }
-}
 
-class TemporalServiceProvider2 implements TemporalServiceInterface {
-    private final Ensure m_ensure;
-    public TemporalServiceProvider2(Ensure e) {
-        m_ensure = e;
+    static class TemporalServiceProvider implements TemporalServiceInterface {
+        private final Ensure m_ensure;
+        public TemporalServiceProvider(Ensure e) {
+            m_ensure = e;
+        }
+        public void invoke() {
+            m_ensure.step(2);
+        }
     }
-    public void invoke() {
-        m_ensure.step(4);
+
+    static class TemporalServiceProvider2 implements TemporalServiceInterface {
+        private final Ensure m_ensure;
+        public TemporalServiceProvider2(Ensure e) {
+            m_ensure = e;
+        }
+        public void invoke() {
+            m_ensure.step(4);
+        }
     }
-}
 
-class TemporalServiceConsumer implements Runnable {
-    private volatile TemporalServiceInterface m_service;
-    private final Ensure m_ensure;
+    static class TemporalServiceConsumer implements Runnable {
+        private volatile TemporalServiceInterface m_service;
+        private final Ensure m_ensure;
 
-    public TemporalServiceConsumer(Ensure e) {
-        m_ensure = e;
-    }
-    
-    public void start() {
-        m_ensure.step(1);
-        Thread t = new Thread(this);
-        t.start();
-    }
-    
-    public void run() {
-        m_service.invoke();
-        m_ensure.waitForStep(3, 1000);
-        m_service.invoke();
-    }
-    
-    public void stop() {
-        m_ensure.step(5);
+        public TemporalServiceConsumer(Ensure e) {
+            m_ensure = e;
+        }
+        
+        public void start() {
+            m_ensure.step(1);
+            Thread t = new Thread(this);
+            t.start();
+        }
+        
+        public void run() {
+            m_service.invoke();
+            m_ensure.waitForStep(3, 1000);
+            m_service.invoke();
+        }
+        
+        public void stop() {
+            m_ensure.step(5);
+        }
     }
 }


Reply via email to