diff options
| author | Esteban Dugueperoux | 2015-11-13 15:14:46 +0000 |
|---|---|---|
| committer | Esteban DUGUEPEROUX | 2015-11-16 09:30:04 +0000 |
| commit | ca29c84b1c788a120cb90cb78f15836fea1e32e3 (patch) | |
| tree | 9c01afc33f2a23272b4280cd592d9f4ee2695caf | |
| parent | a17462443176eeabf555e85cfa86d0634f6a33c5 (diff) | |
| download | org.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>
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(); } /** |
