You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by pd...@apache.org on 2015/07/30 20:05:23 UTC

svn commit: r1693463 - /felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/CircularReferenceTest.java

Author: pderop
Date: Thu Jul 30 18:05:23 2015
New Revision: 1693463

URL: http://svn.apache.org/r1693463
Log:
added debug code that dumps stacktraces when A is bound to B twice.

Modified:
    felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/CircularReferenceTest.java

Modified: felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/CircularReferenceTest.java
URL: http://svn.apache.org/viewvc/felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/CircularReferenceTest.java?rev=1693463&r1=1693462&r2=1693463&view=diff
==============================================================================
--- felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/CircularReferenceTest.java (original)
+++ felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/CircularReferenceTest.java Thu Jul 30 18:05:23 2015
@@ -122,7 +122,7 @@ public class CircularReferenceTest exten
         delay();
 
         A a = getServiceFromConfiguration(componentA, A.class);
-        assertEquals( 1, a.getBs().size());
+        assertABoundToOneB(a);
         delay(); //async binding of a to b after circular ref detected
         B b = getServiceFromConfiguration(componentB, B.class);
         assertEquals( 1, b.getAs().size() );
@@ -153,7 +153,7 @@ public class CircularReferenceTest exten
 
         delay();
         A a = getServiceFromConfiguration(componentA, A.class);
-        assertEquals( 1, a.getBs().size());
+        assertABoundToOneB(a);
         B b = getServiceFromConfiguration(componentB, B.class);
         assertEquals( 1, b.getAs().size() );
 
@@ -227,7 +227,7 @@ public class CircularReferenceTest exten
 
         delay();
         A a = getServiceFromConfiguration(componentA, A.class);
-        assertEquals( 1, a.getBs().size());
+        assertABoundToOneB(a);
         B b = getServiceFromConfiguration(componentB, B.class);
         assertEquals( 1, b.getAs().size() );
     }
@@ -258,12 +258,7 @@ public class CircularReferenceTest exten
 
         delay();
         A a = getServiceFromConfiguration(componentA, A.class);
-        // TODO remove 
-        if (a.getBs().size() != 1) {
-            System.err.println("detected problem ...");
-            a.dumpStackTracesWhenBWasBound();
-        }
-        assertEquals( 1, a.getBs().size());
+        assertABoundToOneB(a);
         B b = getServiceFromConfiguration(componentB, B.class);
         assertEquals( 1, b.getAs().size() );
 
@@ -281,6 +276,13 @@ public class CircularReferenceTest exten
         assertEquals( 1, a.getBs().size());
         b = getServiceFromConfiguration(componentB, B.class);
         assertEquals( 1, b.getAs().size() );
-
+    }
+    
+    private void assertABoundToOneB(A a) {
+        if (a.getBs().size() != 1) {
+            System.err.println("detected problem ...");
+            a.dumpStackTracesWhenBWasBound();
+        }
+        assertEquals( 1, a.getBs().size());
     }
 }