Community
Participate
Working Groups
Platform/UI is missing a convenient way to create an ImageDescriptor from another ImageDescriptor adding it an overlay. That's a frequently useful operation. Several other projects such as EGit have implemented such API.
Gerrit change https://git.eclipse.org/r/83317 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=e805ddf5d4ea0e44ba749b651aebd573702a6404
Added a noteworthy here as several other projects have similar classes to do that. They could drop their code and consume this class instead.
New Gerrit change created: https://git.eclipse.org/r/85613
Gerrit change https://git.eclipse.org/r/85613 was merged to [master]. Commit: http://git.eclipse.org/c/www.eclipse.org/eclipse/news.git/commit/?id=dfe800d549630e9ef90d74916abb32f63ed325e3
DecorationOverlayIconTest fails at least on Mac and Windows, e.g. http://download.eclipse.org/eclipse/downloads/drops4/I20161123-2000/testresults/html/org.eclipse.ui.tests_ep47I-unit-win32_win32.win32.x86_8.0.html Workbench has not been created yet. java.lang.IllegalStateException: Workbench has not been created yet. at org.eclipse.ui.PlatformUI.getWorkbench(PlatformUI.java:93) at org.eclipse.jface.tests.images.DecorationOverlayIconTest.setUp(DecorationOverlayIconTest.java:41) at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:754) at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:351) at org.eclipse.test.CoreTestApplication.runTests(CoreTestApplication.java:37) at org.eclipse.test.CoreTestApplication.run(CoreTestApplication.java:33) at org.eclipse.equinox.internal.app.EclipseAppContainer.callMethodWithException(EclipseAppContainer.java:587) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:198) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:673) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:610) at org.eclipse.equinox.launcher.Main.run(Main.java:1519) at org.eclipse.equinox.launcher.Main.main(Main.java:1492) at org.eclipse.core.launcher.Main.main(Main.java:34)
(In reply to Dani Megert from comment #5) > DecorationOverlayIconTest fails at least on Mac and Windows It fails on *all* 4 platforms. Do we run tests *differently* on SDK builds compared to Gerrit? Is this again some obscure maven thing? The test was fine in Gerrit: https://hudson.eclipse.org/platform/job/eclipse.platform.ui-Gerrit/11254/testReport/org.eclipse.jface.tests.images/DecorationOverlayIconTest/
(In reply to Andrey Loskutov from comment #6) > Do we run tests *differently* on SDK builds compared to Gerrit? Is this > again some obscure maven thing? Yes, tests are started differently -some with Ant against a full IDE, the other with Surefire with minimal dependency set-, and this is not really something we can change easily. However, there may be a way to tweak the configuration of Surefire tests to make it closer from Ant-based one. None of the tests in org.eclipse.ui.tests does have a workbench as pre-requisite?
New Gerrit change created: https://git.eclipse.org/r/85695
Gerrit change https://git.eclipse.org/r/85695 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=9bc9eabfe497649569713f08b1cece21c7f98ecd
Test should now be fixed to also run without a workbench.
Using Objects.equals(referenceImageOrDescriptor, ...) in DecorationOverlayIcon#equals(Object) was unnecessary and is potentially harmful, since it gives a wrong impression, and it can avoid early detection of a base image that is illegally null. Please do not touch the image descriptors in master. I'm working on a big change for bug 495782 and will include that fix there.