Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEsteban Dugueperoux2015-11-13 15:14:46 +0000
committerEsteban DUGUEPEROUX2015-11-16 09:30:04 +0000
commitca29c84b1c788a120cb90cb78f15836fea1e32e3 (patch)
tree9c01afc33f2a23272b4280cd592d9f4ee2695caf
parenta17462443176eeabf555e85cfa86d0634f6a33c5 (diff)
downloadorg.eclipse.sirius-ca29c84b1c788a120cb90cb78f15836fea1e32e3.tar.gz
org.eclipse.sirius-ca29c84b1c788a120cb90cb78f15836fea1e32e3.tar.xz
org.eclipse.sirius-ca29c84b1c788a120cb90cb78f15836fea1e32e3.zip
[482122] Add temporary fix for PropertyViewOnModelExplorerSelectionTests
- On ModelExplorer view the ViewHelper.INSTANCE.getContentProvider() singleton is disposed and reuse as is on view restore. The temporary fix consists to reset the singleton on content provider dispose. - With that the PropertyViewOnModelExplorerSelectionTests.testPropertyViewEditionOnModelExplorerViewSelection() test pass in the suite with CloseWithoutSavingTest & LockedModelExplorerTest executed before. Bug: 482122 Change-Id: Ie0076abe3bfbef9c7d72ef25aee4c0820daa9863 Signed-off-by: Esteban Dugueperoux <esteban.dugueperoux@obeo.fr>
-rw-r--r--plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/suite/AllTestSuite.java3
-rw-r--r--plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/tools/internal/views/ViewHelperImpl.java21
-rw-r--r--plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/tools/internal/views/common/navigator/SiriusCommonContentProvider.java2
3 files changed, 16 insertions, 10 deletions
diff --git a/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/suite/AllTestSuite.java b/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/suite/AllTestSuite.java
index c12bb399db..4257f475bd 100644
--- a/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/suite/AllTestSuite.java
+++ b/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/suite/AllTestSuite.java
@@ -347,6 +347,9 @@ public class AllTestSuite extends TestCase {
suite.addTestSuite(ProjectDependenciesTest.class);
suite.addTestSuite(ProjectsConcurrentCloseTest.class);
suite.addTestSuite(PropertyViewOnModelExplorerSelectionWithLockedObjectTest.class);
+ // PropertyViewOnModelExplorerSelectionTests.testPropertyViewEditionOnModelExplorerViewSelection()
+ // pass in the suite with CloseWithoutSavingTest and
+ // LockedModelExplorerTest executed before because of Bug 482122
suite.addTestSuite(PropertyViewOnModelExplorerSelectionTests.class);
suite.addTestSuite(ContextualMenuTest.class);
suite.addTestSuite(BracketEdgeTests.class);
diff --git a/plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/tools/internal/views/ViewHelperImpl.java b/plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/tools/internal/views/ViewHelperImpl.java
index cdf838d962..82acfb378b 100644
--- a/plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/tools/internal/views/ViewHelperImpl.java
+++ b/plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/tools/internal/views/ViewHelperImpl.java
@@ -58,11 +58,7 @@ public final class ViewHelperImpl implements ViewHelper {
return new ViewHelperImpl();
}
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.sirius.ui.tools.api.views.ViewHelper#createAdapterFactory()
- */
+ @Override
public AdapterFactory createAdapterFactory() {
final List<AdapterFactory> factories = new ArrayList<AdapterFactory>();
final ComposedAdapterFactory generic = new ComposedAdapterFactory(ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
@@ -73,17 +69,14 @@ public final class ViewHelperImpl implements ViewHelper {
return new ComposedAdapterFactory(factories);
}
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.sirius.ui.tools.api.views.ViewHelper#getContentProvider()
- */
+ @Override
public ITreeContentProvider getContentProvider() {
if (contentProvider == null) {
SessionWrapperContentProvider sessionWrapperContentProvider = new SessionWrapperContentProvider(new AdapterFactoryContentProvider(createAdapterFactory()));
contentProvider = new GroupingContentProvider(sessionWrapperContentProvider);
Collection<ITreeContentProvider> liveProviders = Collections2.transform(extensions, new Function<ISessionViewExtension, ITreeContentProvider>() {
+ @Override
public ITreeContentProvider apply(ISessionViewExtension from) {
return from.getContentProvider();
}
@@ -94,12 +87,20 @@ public final class ViewHelperImpl implements ViewHelper {
}
/**
+ * Reset to null the contentProvider.
+ */
+ public void resetContentProvider() {
+ contentProvider = null;
+ }
+
+ /**
* Get the context menu providers from extensions.
*
* @return the providers
*/
public Collection<IContextMenuActionProvider> getContextMenuActionsProviders() {
Collection<IContextMenuActionProvider> liveProviders = Collections2.transform(extensions, new Function<ISessionViewExtension, IContextMenuActionProvider>() {
+ @Override
public IContextMenuActionProvider apply(ISessionViewExtension from) {
return from.getContextMenuActionProvider();
}
diff --git a/plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/tools/internal/views/common/navigator/SiriusCommonContentProvider.java b/plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/tools/internal/views/common/navigator/SiriusCommonContentProvider.java
index 0959005d2d..9e1e46fef5 100644
--- a/plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/tools/internal/views/common/navigator/SiriusCommonContentProvider.java
+++ b/plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/tools/internal/views/common/navigator/SiriusCommonContentProvider.java
@@ -51,6 +51,7 @@ import org.eclipse.sirius.business.api.session.SessionManagerListener;
import org.eclipse.sirius.common.ui.tools.api.navigator.GroupingContentProvider;
import org.eclipse.sirius.ext.base.Option;
import org.eclipse.sirius.ui.tools.api.views.ViewHelper;
+import org.eclipse.sirius.ui.tools.internal.views.ViewHelperImpl;
import org.eclipse.sirius.ui.tools.internal.views.common.FileSessionFinder;
import org.eclipse.sirius.ui.tools.internal.views.common.SessionWrapperContentProvider;
import org.eclipse.sirius.ui.tools.internal.views.common.item.AnalysisResourceItemImpl;
@@ -511,6 +512,7 @@ public class SiriusCommonContentProvider implements ICommonContentProvider {
}
linkWithEditorSelectionListener.dispose();
linkWithEditorSelectionListener = null;
+ ((ViewHelperImpl) ViewHelper.INSTANCE).resetContentProvider();
}
/**

Back to the top