[jboss-osgi-commits] JBoss-OSGI SVN: r93286 - in projects/jboss-osgi/trunk/testsuite/functional/src/test: resources/META-INF and 1 other directories.

jboss-osgi-commits at lists.jboss.org jboss-osgi-commits at lists.jboss.org
Tue Sep 8 12:33:54 EDT 2009


Author: thomas.diesler at jboss.com
Date: 2009-09-08 12:33:54 -0400 (Tue, 08 Sep 2009)
New Revision: 93286

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/resources/META-INF/jboss-osgi-bootstrap.xml
   projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/jbosgi151/jbosgi151-bundleC.bnd
   projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/jbosgi151/jbosgi151-bundleD.bnd
Log:
[JBOSGI-151] Cannot resolve circular dependencies
Simulate compendium + jetty issue

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-08 16:33:03 UTC (rev 93285)
+++ projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/jbosgi151/OSGI151TestCase.java	2009-09-08 16:33:54 UTC (rev 93286)
@@ -30,6 +30,8 @@
 import org.jboss.osgi.spi.testing.OSGiTestHelper;
 import org.jboss.test.osgi.jbosgi151.bundleA.BeanA;
 import org.jboss.test.osgi.jbosgi151.bundleB.BeanB;
+import org.junit.BeforeClass;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleContext;
@@ -40,24 +42,51 @@
  * 
  * https://jira.jboss.org/jira/browse/JBOSGI-143
  * 
- * A imports B
- * B imports A
+ * BundleA 
+ *  exports A
+ *  imports B
+ *  
+ * BundleB 
+ *  exports B
+ *  imports A
+ *  
+ * BundleC 
+ *  exports A, B
+ *  imports A
  * 
- * C exports/imports A,B
- * D exports/imports A,B
+ * BundleD 
+ *  exports A,
+ *  imports A, B
  * 
  * @author thomas.diesler at jboss.com
  * @since 07-Sep-2009
  */
 public class OSGI151TestCase
 {
+   private static Framework framework;
+   
+   @BeforeClass
+   public static void beforeClass() throws Exception
+   {
+      OSGiBootstrapProvider bootProvider = OSGiBootstrap.getBootstrapProvider();
+      framework = bootProvider.getFramework();
+      framework.start();
+   }
+   
+   @BeforeClass
+   public static void afterClass() throws Exception
+   {
+      if (framework != null)
+      {
+         framework.stop();
+         framework.waitForStop(2000);
+      }
+   }
+   
    @Test
+   @Ignore
    public void testCircularNoSelfDependency() throws Exception
    {
-      OSGiBootstrapProvider bootProvider = OSGiBootstrap.getBootstrapProvider();
-      Framework framework = bootProvider.getFramework();
-      framework.start();
-      
       BundleContext sysContext = framework.getBundleContext();
       
       Bundle bundleA = sysContext.installBundle(getBundleLocation("jbosgi151-bundleA.jar"));
@@ -67,37 +96,35 @@
       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());
+      /*
+      bundleB.start();
+      assertEquals("ACTIVE expected", Bundle.ACTIVE, bundleB.getState());
+      assertEquals("RESOLVED expected", Bundle.RESOLVED, bundleA.getState());
       
-//      Class<?> classAA = bundleA.loadClass(BeanA.class.getName());
-//      Class<?> classAB = bundleB.loadClass(BeanA.class.getName());
-//      assertEquals("Class for BeanA", classAA, classAB);
-//      
-//      Class<?> classBA = bundleA.loadClass(BeanB.class.getName());
-//      Class<?> classBB = bundleB.loadClass(BeanB.class.getName());
-//      assertEquals("Class for BeanB", classBA, classBB);
+      Class<?> classAA = bundleA.loadClass(BeanA.class.getName());
+      Class<?> classAB = bundleB.loadClass(BeanA.class.getName());
+      assertEquals("Class for BeanA", classAA, classAB);
       
-      framework.stop();
-      framework.waitForStop(1000);
+      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
    {
-      OSGiBootstrapProvider bootProvider = OSGiBootstrap.getBootstrapProvider();
-      Framework framework = bootProvider.getFramework();
-      framework.start();
-      
       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());
 
-      Bundle bundleD = sysContext.installBundle(getBundleLocation("jbosgi151-bundleD.jar"));
-      assertEquals("INSTALLED expected", Bundle.INSTALLED, bundleD.getState());
-      
       bundleD.start();
       assertEquals("ACTIVE expected", Bundle.ACTIVE, bundleD.getState());
       assertEquals("RESOLVED expected", Bundle.RESOLVED, bundleC.getState());
@@ -110,8 +137,8 @@
       Class<?> classBD = bundleD.loadClass(BeanB.class.getName());
       assertEquals("Class for BeanB", classBC, classBD);
       
-      framework.stop();
-      framework.waitForStop(1000);
+      bundleD.uninstall();
+      bundleC.uninstall();
    }
 
    private String getBundleLocation(String jarname)

Modified: projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/META-INF/jboss-osgi-bootstrap.xml
===================================================================
--- projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/META-INF/jboss-osgi-bootstrap.xml	2009-09-08 16:33:03 UTC (rev 93285)
+++ projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/META-INF/jboss-osgi-bootstrap.xml	2009-09-08 16:33:54 UTC (rev 93286)
@@ -52,20 +52,6 @@
   ********************************
   -->
   
-  <bean name="OSGiAutoInstallPlugin" class="org.jboss.osgi.plugins.facade.plugins.AutoInstallPluginImpl">
-    <constructor><parameter><inject bean="OSGiBundleManager" /></parameter></constructor>
-    <property name="autoInstall">
-     <list elementClass="java.net.URL">
-      <value>${test.archive.directory}/bundles/org.osgi.compendium.jar</value>
-     </list>
-    </property>
-    <property name="autoStart">
-     <list elementClass="java.net.URL">
-      <value>${test.archive.directory}/bundles/org.apache.felix.log.jar</value>
-      <value>${test.archive.directory}/bundles/jboss-osgi-common.jar</value>
-     </list>
-    </property>
-  </bean>
   <bean name="OSGiFrameworkEventsPlugin" class="org.jboss.osgi.plugins.facade.plugins.FrameworkEventsPluginImpl">
     <constructor><parameter><inject bean="OSGiBundleManager" /></parameter></constructor>
   </bean>

Modified: projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/jbosgi151/jbosgi151-bundleC.bnd
===================================================================
--- projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/jbosgi151/jbosgi151-bundleC.bnd	2009-09-08 16:33:03 UTC (rev 93285)
+++ projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/jbosgi151/jbosgi151-bundleC.bnd	2009-09-08 16:33:54 UTC (rev 93286)
@@ -2,4 +2,4 @@
 
 Bundle-SymbolicName: jbosgi151-bundleC
 Export-Package: org.jboss.test.osgi.jbosgi151.bundleA, org.jboss.test.osgi.jbosgi151.bundleB
-Import-Package: org.jboss.test.osgi.jbosgi151.bundleA, org.jboss.test.osgi.jbosgi151.bundleB
+Import-Package: org.jboss.test.osgi.jbosgi151.bundleA

Modified: projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/jbosgi151/jbosgi151-bundleD.bnd
===================================================================
--- projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/jbosgi151/jbosgi151-bundleD.bnd	2009-09-08 16:33:03 UTC (rev 93285)
+++ projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/jbosgi151/jbosgi151-bundleD.bnd	2009-09-08 16:33:54 UTC (rev 93286)
@@ -1,5 +1,5 @@
 # bnd build -classpath target/test-classes -output target/test-libs/jbosgi151-bundleD.jar src/test/resources/jbosgi151/bundleD.bnd
 
 Bundle-SymbolicName: jbosgi151-bundleD
-Export-Package: org.jboss.test.osgi.jbosgi151.bundleA, org.jboss.test.osgi.jbosgi151.bundleB
+Export-Package: org.jboss.test.osgi.jbosgi151.bundleA
 Import-Package: org.jboss.test.osgi.jbosgi151.bundleA, org.jboss.test.osgi.jbosgi151.bundleB



More information about the jboss-osgi-commits mailing list