2 Replies Latest reply on Nov 11, 2009 10:59 AM by adrian.brock

    Tests no longer work in eclipse

      After the lastest round of refactoring the tests now don't run in eclipse.

      And this is not just the usual log4j mess again.

      The root cause is an eclipse/maven problem with the classpath, i.e. it is now looking
      for /META-INF/jboss-osgi-bootstrap.xml but it is finding a META-INF in some jar
      instead of src/test/resources and so not find the xml.

      I'm moving this back to the bootstrap subfolder so there can be no confusion.

      Another broken part is because the following method has been removed from FrameworkTest extensions

      e.g.

       public static Test suite()
       {
       return suite(OSGiSmokeTestCase.class);
       }
      


      This construction of the TestSuite is what sets up and tears down the whole testcase
      rather than reconstructing it for every method. See junit's TestSetup mechanism.

      As I've said before, I don't see the point of all this refactoring.

      Especially when it is to "standards" that are not traditional jboss, e.g.
      * internal instead of plugins? (in some cases both :-)
      * tests no longer go in a "test" subfolder and don't end in TestCase?
      etc.

      But at least don't change the semantics and break things.

      On a related issue, the "no manifest" tests are there for a reason.
      As are some other ones I'm going to add now I see what an abortion has been
      made of this.
      i.e. it should be possible to install NORMAL deployments using the OSGi api.
      They don't have to be osgi bundles, they could be wars or any other type
      of deployment.
      Part of the reason for implementing OSGi is for users to have a standardized
      framework for installing and controlling their deployments.
      OSGi implementation details should go in the OSGi deployers not the bundle manager
      which is just a facade for the MainDeployer. You only do OSGi processing when
      it has OSGiMetaData and you only know that once it is deployed through the
      deployers.