[jboss-osgi-commits] JBoss-OSGI SVN: r93310 - projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/jbosgi151.

jboss-osgi-commits at lists.jboss.org jboss-osgi-commits at lists.jboss.org
Wed Sep 9 08:03:21 EDT 2009


Author: thomas.diesler at jboss.com
Date: 2009-09-09 08:03:21 -0400 (Wed, 09 Sep 2009)
New Revision: 93310

Modified:
   projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/jbosgi151/OSGI151TestCase.java
Log:
[JBOSGI-151] Cannot resolve circular dependencies
Add reverse order install test

Modified: projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/jbosgi151/OSGI151TestCase.java
===================================================================
--- projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/jbosgi151/OSGI151TestCase.java	2009-09-09 11:51:41 UTC (rev 93309)
+++ projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/jbosgi151/OSGI151TestCase.java	2009-09-09 12:03:21 UTC (rev 93310)
@@ -40,7 +40,7 @@
 /**
  * [JBOSGI-151] Cannot resolve circular dependencies
  * 
- * https://jira.jboss.org/jira/browse/JBOSGI-143
+ * https://jira.jboss.org/jira/browse/JBOSGI-151
  * 
  * BundleA 
  *  exports A
@@ -95,8 +95,6 @@
       Bundle bundleB = sysContext.installBundle(getBundleLocation("jbosgi151-bundleB.jar"));
       assertEquals("INSTALLED expected", Bundle.INSTALLED, bundleB.getState());
       
-      System.out.println("FIXME [JBOSGI-151] Cannot resolve circular dependencies");
-      /*
       bundleB.start();
       assertEquals("ACTIVE expected", Bundle.ACTIVE, bundleB.getState());
       assertEquals("RESOLVED expected", Bundle.RESOLVED, bundleA.getState());
@@ -108,35 +106,61 @@
       Class<?> classBA = bundleA.loadClass(BeanB.class.getName());
       Class<?> classBB = bundleB.loadClass(BeanB.class.getName());
       assertEquals("Class for BeanB", classBA, classBB);
-      */
       
       bundleB.uninstall();
       bundleA.uninstall();
    }
 
    @Test
-   public void testCircularWithSelfDependency() throws Exception
+   public void testCircularInstallCbeforeD() throws Exception
    {
       BundleContext sysContext = framework.getBundleContext();
       
+      Bundle bundleC = sysContext.installBundle(getBundleLocation("jbosgi151-bundleC.jar"));
+      assertEquals("INSTALLED expected", Bundle.INSTALLED, bundleC.getState());
+
       Bundle bundleD = sysContext.installBundle(getBundleLocation("jbosgi151-bundleD.jar"));
       assertEquals("INSTALLED expected", Bundle.INSTALLED, bundleD.getState());
       
-      Bundle bundleC = sysContext.installBundle(getBundleLocation("jbosgi151-bundleC.jar"));
-      assertEquals("INSTALLED expected", Bundle.INSTALLED, bundleC.getState());
-
       bundleD.start();
       assertEquals("ACTIVE expected", Bundle.ACTIVE, bundleD.getState());
       assertEquals("RESOLVED expected", Bundle.RESOLVED, bundleC.getState());
       
+      Class<?> classBC = bundleC.loadClass(BeanB.class.getName());
+      Class<?> classBD = bundleD.loadClass(BeanB.class.getName());
+      assertEquals("Class for BeanB", classBC, classBD);
+      
       Class<?> classAC = bundleC.loadClass(BeanA.class.getName());
       Class<?> classAD = bundleD.loadClass(BeanA.class.getName());
       assertEquals("Class for BeanA", classAC, classAD);
       
+      bundleD.uninstall();
+      bundleC.uninstall();
+   }
+
+   @Test
+   public void testCircularInstallDbeforeC() throws Exception
+   {
+      BundleContext sysContext = framework.getBundleContext();
+      
+      Bundle bundleD = sysContext.installBundle(getBundleLocation("jbosgi151-bundleD.jar"));
+      assertEquals("INSTALLED expected", Bundle.INSTALLED, bundleD.getState());
+      
+      Bundle bundleC = sysContext.installBundle(getBundleLocation("jbosgi151-bundleC.jar"));
+      assertEquals("INSTALLED expected", Bundle.INSTALLED, bundleC.getState());
+
+      bundleD.start();
+      assertEquals("ACTIVE expected", Bundle.ACTIVE, bundleD.getState());
+      assertEquals("RESOLVED expected", Bundle.RESOLVED, bundleC.getState());
+      
       Class<?> classBC = bundleC.loadClass(BeanB.class.getName());
       Class<?> classBD = bundleD.loadClass(BeanB.class.getName());
       assertEquals("Class for BeanB", classBC, classBD);
       
+      Class<?> classAC = bundleC.loadClass(BeanA.class.getName());
+      Class<?> classAD = bundleD.loadClass(BeanA.class.getName());
+      assertEquals("Class for BeanA", classAC, classAD);
+      
       bundleD.uninstall();
       bundleC.uninstall();
    }



More information about the jboss-osgi-commits mailing list