Author: bdelacretaz
Date: Wed Sep 23 08:28:40 2015
New Revision: 1704776

URL: http://svn.apache.org/viewvc?rev=1704776&view=rev
Log:
SLING-5040 - verify before/after methods with TeleporterRule

Modified:
    
sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/teleporter/LocalServiceTeleporterTest.java
    
sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/teleporter/SomeService.java

Modified: 
sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/teleporter/LocalServiceTeleporterTest.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/teleporter/LocalServiceTeleporterTest.java?rev=1704776&r1=1704775&r2=1704776&view=diff
==============================================================================
--- 
sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/teleporter/LocalServiceTeleporterTest.java
 (original)
+++ 
sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/teleporter/LocalServiceTeleporterTest.java
 Wed Sep 23 08:28:40 2015
@@ -16,8 +16,14 @@
  */
 package org.apache.sling.launchpad.webapp.integrationtest.teleporter;
 
-import org.apache.sling.junit.rules.TeleporterRule;
+import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertEquals;
+
+import java.util.UUID;
+
+import org.apache.sling.junit.rules.TeleporterRule;
+import org.junit.After;
+import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
 import org.osgi.framework.BundleContext;
@@ -26,27 +32,38 @@ import org.osgi.framework.ServiceRegistr
 /** Test registering a service with a local interface in our teleported 
server-side test class. */
  public class LocalServiceTeleporterTest {
 
-    private final long value = System.currentTimeMillis(); 
+    private String value; 
+    private ServiceRegistration reg;
     
-    private final SomeService serviceImpl = new SomeService() {
-        @Override
-        public long getValue() {
-            return LocalServiceTeleporterTest.this.value;
-        }
-    };
-     
     @Rule
     public final TeleporterRule teleporter = 
TeleporterRule.forClass(getClass(), "Launchpad");
     
-    @Test
-    public void testLocalService() {
+    @Before
+    public void setup() {
+        value = UUID.randomUUID().toString();
         final BundleContext bc = teleporter.getService(BundleContext.class);
-        final ServiceRegistration reg = 
bc.registerService(SomeService.class.getName(), serviceImpl, null);
-        try {
-            final SomeService s = teleporter.getService(SomeService.class);
-            assertEquals(value, s.getValue());
-        } finally {
+        
+        final SomeService s = new SomeService() {
+            @Override
+            public String getValue() {
+                return LocalServiceTeleporterTest.this.value;
+            }
+        };
+        
+        reg = bc.registerService(SomeService.class.getName(), s, null);
+    }
+    
+    @After
+    public void cleanup() {
+        if(reg != null) {
             reg.unregister();
         }
     }
+    
+    @Test
+    public void testLocalService() {
+        final SomeService s = teleporter.getService(SomeService.class);
+        assertNotNull("Expecting to get a SomeService instance", s);
+        assertEquals(value, s.getValue());
+    }
 }
\ No newline at end of file

Modified: 
sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/teleporter/SomeService.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/teleporter/SomeService.java?rev=1704776&r1=1704775&r2=1704776&view=diff
==============================================================================
--- 
sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/teleporter/SomeService.java
 (original)
+++ 
sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/teleporter/SomeService.java
 Wed Sep 23 08:28:40 2015
@@ -17,5 +17,5 @@
 package org.apache.sling.launchpad.webapp.integrationtest.teleporter;
 
 public interface SomeService {
-    long getValue();
+    String getValue();
 }
\ No newline at end of file


Reply via email to