Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "E4/Compatibility/Testing"

Line 6: Line 6:
 
#Checkout the <code>org.eclipse.e4.ui.releng</code> module from the <code>/cvsroot/eclipse</code>'s <code>e4/releng</code> directory.
 
#Checkout the <code>org.eclipse.e4.ui.releng</code> module from the <code>/cvsroot/eclipse</code>'s <code>e4/releng</code> directory.
 
#Right-click on the <code>e4.ui.compatibility.psf</code> file and select 'Import project set...'. When you are prompted for a password, just enter <code>anonymous</code> as your user name and leave the password as blank.
 
#Right-click on the <code>e4.ui.compatibility.psf</code> file and select 'Import project set...'. When you are prompted for a password, just enter <code>anonymous</code> as your user name and leave the password as blank.
#Repeat the procedure for <code>e4.ui.psf</code>, <code>e4.ui.css.psf</code>, and <code>e4.ui.tests.compatibility.psf</code>.
+
#Repeat the procedure for <code>e4.ui.psf</code>, <code>e4.ui.css.psf</code>, and <code>e4.ui.tests.compatibility.psf</code>. You '''will''' have errors.
  
 
===Running the tests===
 
===Running the tests===
Line 16: Line 16:
 
#Change the target product to <code>org.eclipse.e4.ide.application.product</code>.
 
#Change the target product to <code>org.eclipse.e4.ide.application.product</code>.
 
#Try running the test again. It should work now.
 
#Try running the test again. It should work now.
 
==Known issues==
 
#If you get a <code>NullPointerException</code> in <code>OSGiContextStrategy</code> like the stack trace below, you are seeing {{bugstrike|299070}}. To workaround the problem, you can checkout <code>org.eclipse.e4.core.services</code> from CVS and then apply the patch that's there until a proper fix has been checked in.
 
 
<source lang="java">
 
java.lang.NullPointerException
 
at org.eclipse.e4.internal.core.services.osgi.OSGiContextStrategy.addingService(OSGiContextStrategy.java:71)
 
at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:896)
 
at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:261)
 
at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:184)
 
at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:339)
 
at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:273)
 
at org.eclipse.e4.internal.core.services.osgi.OSGiContextStrategy.lookup(OSGiContextStrategy.java:123)
 
at org.eclipse.e4.core.services.internal.context.EclipseContext.internalGet(EclipseContext.java:347)
 
at org.eclipse.e4.core.services.internal.context.EclipseContext.get(EclipseContext.java:316)
 
at org.eclipse.ui.PlatformUI.getTestableObject(PlatformUI.java:171)
 
at org.eclipse.pde.internal.junit.runtime.UITestApplication.start(UITestApplication.java:43)
 
</source>
 

Revision as of 15:35, 26 February 2010

This page describes how to run the 3.x API tests with a workbench that's backed by e4's compatibility layer.

Setup

  1. Download a recent e4 SDK here.
  2. Add this CVS repository location to your workspace setup: :pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse
  3. Checkout the org.eclipse.e4.ui.releng module from the /cvsroot/eclipse's e4/releng directory.
  4. Right-click on the e4.ui.compatibility.psf file and select 'Import project set...'. When you are prompted for a password, just enter anonymous as your user name and leave the password as blank.
  5. Repeat the procedure for e4.ui.psf, e4.ui.css.psf, and e4.ui.tests.compatibility.psf. You will have errors.

Running the tests

  1. Select a test from the org.eclipse.ui.tests bundle, such as org.eclipse.ui.tests.api.IWorkbenchPageTest for example.
  2. If there are compiler errors indicating incorrect imports, try using 'Organize Imports' to get rid of them or to have them point to the e4 variant of the internal.
  3. Right-click on the file > Run As > JUnit Plug-in Test.
  4. This will fail. Open the launch configuration dialog.
  5. Select the launch configuration that was just generated and go to the 'Main' tab.
  6. Change the target product to org.eclipse.e4.ide.application.product.
  7. Try running the test again. It should work now.

Back to the top