| Summary: | Xpand is completely broken | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | [Modeling] M2T | Reporter: | Sebastian Zarnekow <sebastian.zarnekow> | ||||||||
| Component: | Xpand | Assignee: | Karsten Thoms <karsten.thoms> | ||||||||
| Status: | CLOSED FIXED | QA Contact: | |||||||||
| Severity: | critical | ||||||||||
| Priority: | P3 | CC: | benedikt.niehues, dennis.huebner, karsten.thoms, sven.efftinge | ||||||||
| Version: | 1.1.0 | Flags: | karsten.thoms:
juno+
|
||||||||
| Target Milestone: | M3 | ||||||||||
| Hardware: | PC | ||||||||||
| OS: | Mac OS X - Carbon (unsup.) | ||||||||||
| Whiteboard: | |||||||||||
| Bug Depends on: | |||||||||||
| Bug Blocks: | 359115 | ||||||||||
| Attachments: |
|
||||||||||
|
Description
Sebastian Zarnekow
I think it's a good example that shows the benefits of using static analyze tools. Therefore I opened a bug report #359115. Created attachment 204151 [details] Patch for bug 359100 this fixes the bug (In reply to comment #2) > Created attachment 204151 [details] > Patch for bug 359100 > > this fixes the bug A lightweight unit test as a confirmation would be appropriate. Created attachment 204574 [details]
UnitTest testing referenced projects build
The unittest patch refers to a binary testProjects.zip. Could you attach that zip separately? Created attachment 204579 [details]
testProjects for the unit tests
as they can not be integrated in the patch here it is separately. It has to be stored under org.eclipse.xtend.shared.ui.test/resources/
The added unit test is failing:
junit.framework.AssertionFailedError: {resource=Template.xpt, attributes={message=Internal error:Imported extension resource org::eclipse::xtend::util::stdlib::io has errors., location=line: 3, charStart=63, issueType=Internal error, lineNumber=3, severity=1, charEnd=110}, type=org.eclipse.xtend.shared.ui.problem}
at junit.framework.Assert.fail(Assert.java:47)
at org.eclipse.xtend.shared.ui.test.PluginTestBase.assertNoErrorMarkers(PluginTestBase.java:43)
at org.eclipse.xtend.shared.ui.test.xpand2.core.ReferencedProjectTest.testReferencedProjectWorkspace(ReferencedProjectTest.java:49)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at junit.framework.TestCase.runTest(TestCase.java:168)
at junit.framework.TestCase.runBare(TestCase.java:134)
at junit.framework.TestResult$1.protect(TestResult.java:110)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.framework.TestResult.run(TestResult.java:113)
at junit.framework.TestCase.run(TestCase.java:124)
at junit.framework.TestSuite.runTest(TestSuite.java:243)
at junit.framework.TestSuite.run(TestSuite.java:238)
at junit.framework.TestSuite.runTest(TestSuite.java:243)
at junit.framework.TestSuite.run(TestSuite.java:238)
at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.pde.internal.junit.runtime.RemotePluginTestRunner.main(RemotePluginTestRunner.java:62)
at org.eclipse.pde.internal.junit.runtime.PlatformUITestHarness$1.run(PlatformUITestHarness.java:47)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3935)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3612)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
at org.eclipse.pde.internal.junit.runtime.NonUIThreadTestApplication.runApp(NonUIThreadTestApplication.java:54)
at org.eclipse.pde.internal.junit.runtime.UITestApplication.runApp(UITestApplication.java:41)
at org.eclipse.pde.internal.junit.runtime.NonUIThreadTestApplication.start(NonUIThreadTestApplication.java:48)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
The test is failing because of linked resources... Similar to bug 338695 To solve the problem there are three possibilities: 1. close the project org.eclipse.xtend.util.stdlib in your workspace 2. modify the template so that it won't use the stdlib::io extension 3. fix the bug 338695 Could reproduce the bug and saw it fixed after applying the patch. I can't find the corresponding test in https://hudson.eclipse.org/hudson/job/Xpand-nightly-HEAD/707/ We really need a test that is running in CI, especially for critical bugs. We need to activate the tests from org.eclipse.xtend.shared.ui.test Tests are existent, but not executed in CI build. Add org.eclipse.xtend.shared.ui.test.AllTests (In reply to comment #12) > Tests are existent, but not executed in CI build. > > Add org.eclipse.xtend.shared.ui.test.AllTests Now I understand why I couldn't see any new test results after the patch was applied. org.eclipse.xtend.shared.ui.test project was not included in the test feature and that's why the launch configuration was missing. I've added tend.shared.ui.test bundle to the test feature and created /org.eclipse.xpand.build-feature/org.eclipse.xtend.shared.ui.test.launch file. See: https://hudson.eclipse.org/hudson/job/Xpand-nightly-HEAD/728/testReport/Tests%20for%20org.eclipse.xtend.shared.ui.test$org.eclipse.xtend.shared.ui.test.xpand2.core/ReferencedProjectTest/ By the way we can use eclipse launch configuration files with buckminster, so the old painful test suite approach is obsolete (see Xtext as reference). Bug resolved before Xpand 1.2 release date => Closing |