Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 157542 Details for
Bug 295003
[UI] Design and implement a EPartService API
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
EPartService v08
bug295003-patch-v8.txt (text/plain), 56.68 KB, created by
Remy Suen
on 2010-01-28 12:37:38 EST
(
hide
)
Description:
EPartService v08
Filename:
MIME Type:
Creator:
Remy Suen
Created:
2010-01-28 12:37:38 EST
Size:
56.68 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.e4.ui.tests >Index: src/org/eclipse/e4/ui/tests/application/EPartServiceTest.java >=================================================================== >RCS file: /cvsroot/eclipse/e4/org.eclipse.e4.ui/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/application/EPartServiceTest.java,v >retrieving revision 1.14 >diff -u -r1.14 EPartServiceTest.java >--- src/org/eclipse/e4/ui/tests/application/EPartServiceTest.java 28 Jan 2010 12:50:05 -0000 1.14 >+++ src/org/eclipse/e4/ui/tests/application/EPartServiceTest.java 28 Jan 2010 17:34:57 -0000 >@@ -12,6 +12,7 @@ > > import java.util.Arrays; > import java.util.Collection; >+import java.util.Iterator; > > import junit.framework.TestCase; > >@@ -21,6 +22,8 @@ > import org.eclipse.e4.core.services.context.spi.IContextConstants; > import org.eclipse.e4.ui.model.application.MApplication; > import org.eclipse.e4.ui.model.application.MApplicationFactory; >+import org.eclipse.e4.ui.model.application.MElementContainer; >+import org.eclipse.e4.ui.model.application.MPSCElement; > import org.eclipse.e4.ui.model.application.MPart; > import org.eclipse.e4.ui.model.application.MPartDescriptor; > import org.eclipse.e4.ui.model.application.MPartStack; >@@ -1268,18 +1271,10 @@ > .setURI("platform:/plugin/org.eclipse.e4.ui.tests/org.eclipse.e4.ui.tests.application.ClientEditor"); > window.getChildren().add(saveablePart); > >- // setup the context >- applicationContext.set(MApplication.class.getName(), application); >- application.setContext(applicationContext); >- Workbench.processHierarchy(application); >- ((Notifier) application).eAdapters().add( >- new UIEventPublisher(applicationContext)); >+ initialize(applicationContext, application); > > getEngine().createGui(window); > >- ClientEditor editor = (ClientEditor) saveablePart.getObject(); >- editor.setThrowException(throwException); >- > window.getContext().set(ISaveHandler.class.getName(), > new ISaveHandler() { > public Save[] promptToSave( >@@ -1292,6 +1287,9 @@ > } > }); > >+ ClientEditor editor = (ClientEditor) saveablePart.getObject(); >+ editor.setThrowException(throwException); >+ > EPartService partService = (EPartService) window.getContext().get( > EPartService.class.getName()); > if (beforeDirty) { >@@ -1506,6 +1504,1439 @@ > testSavePart(ISaveHandler.Save.CANCEL, false, false, false); > } > >+ private MSaveablePart createSaveablePart( >+ MElementContainer<MPSCElement> container, boolean beforeDirty) { >+ MSaveablePart saveablePart = MApplicationFactory.eINSTANCE >+ .createSaveablePart(); >+ saveablePart.setDirty(beforeDirty); >+ saveablePart >+ .setURI("platform:/plugin/org.eclipse.e4.ui.tests/org.eclipse.e4.ui.tests.application.ClientEditor"); >+ container.getChildren().add(saveablePart); >+ return saveablePart; >+ } >+ >+ private Save prompt(Save[] candidates, MSaveablePart partToTest, >+ MSaveablePart part) { >+ return partToTest == part ? candidates[0] : candidates[1]; >+ } >+ >+ private void testSaveAll(final Save[] returnValues, boolean confirm, >+ boolean[] beforeDirty, boolean[] afterDirty, boolean success, >+ boolean[] saveCalled, boolean[] throwException) { >+ MApplication application = MApplicationFactory.eINSTANCE >+ .createApplication(); >+ >+ MWindow window = MApplicationFactory.eINSTANCE.createWindow(); >+ application.getChildren().add(window); >+ final MSaveablePart saveablePart = createSaveablePart(window, >+ beforeDirty[0]); >+ final MSaveablePart saveablePart2 = createSaveablePart(window, >+ beforeDirty[1]); >+ >+ // setup the context >+ initialize(applicationContext, application); >+ >+ getEngine().createGui(window); >+ >+ ClientEditor editor = (ClientEditor) saveablePart.getObject(); >+ editor.setThrowException(throwException[0]); >+ >+ ClientEditor editor2 = (ClientEditor) saveablePart2.getObject(); >+ editor2.setThrowException(throwException[1]); >+ >+ window.getContext().set(ISaveHandler.class.getName(), >+ new ISaveHandler() { >+ public Save[] promptToSave( >+ Collection<MSaveablePart> saveableParts) { >+ int index = 0; >+ Save[] prompt = new Save[saveableParts.size()]; >+ Iterator<MSaveablePart> it = saveableParts.iterator(); >+ while (it.hasNext()) { >+ prompt[index] = prompt(returnValues, it.next(), >+ saveablePart); >+ index++; >+ } >+ return prompt; >+ } >+ >+ public Save promptToSave(MSaveablePart saveablePart) { >+ return null; >+ } >+ }); >+ >+ EPartService partService = (EPartService) window.getContext().get( >+ EPartService.class.getName()); >+ assertEquals(success, partService.saveAll(confirm)); >+ >+ assertEquals(afterDirty[0], saveablePart.isDirty()); >+ assertEquals(saveCalled[0], editor.wasSaveCalled()); >+ >+ assertEquals(afterDirty[1], saveablePart2.isDirty()); >+ assertEquals(saveCalled[1], editor2.wasSaveCalled()); >+ } >+ >+ private boolean hasCancel(Save[] returnValues, boolean[] beforeDirty) { >+ for (int i = 0; i < returnValues.length; i++) { >+ if (returnValues[i] == Save.CANCEL && beforeDirty[i]) { >+ return true; >+ } >+ } >+ return false; >+ } >+ >+ private boolean isSuccessful(Save[] returnValues, boolean confirm, >+ boolean[] beforeDirty, boolean[] throwException) { >+ if (confirm) { >+ if (returnValues[0] == Save.YES) { >+ if (returnValues[1] == Save.YES) { >+ if (beforeDirty[0]) { >+ if (beforeDirty[1]) { >+ return !throwException[0] && !throwException[1]; >+ } >+ return !throwException[0]; >+ } else if (beforeDirty[1]) { >+ return !throwException[1]; >+ } >+ return true; >+ } else if (beforeDirty[0]) { >+ return !throwException[0]; >+ } >+ return true; >+ } else if (returnValues[1] == Save.YES) { >+ if (beforeDirty[1]) { >+ return !throwException[1]; >+ } >+ } >+ return true; >+ } else if (beforeDirty[0]) { >+ if (beforeDirty[1]) { >+ return !throwException[0] && !throwException[1]; >+ } >+ return !throwException[0]; >+ } else if (beforeDirty[1]) { >+ return !throwException[1]; >+ } >+ return true; >+ } >+ >+ private boolean[] afterDirty(Save[] returnValues, boolean confirm, >+ boolean[] beforeDirty, boolean[] throwException) { >+ if (confirm) { >+ if (returnValues[0] == Save.YES) { >+ if (returnValues[1] == Save.YES) { >+ return new boolean[] { >+ beforeDirty[0] ? throwException[0] : false, >+ beforeDirty[1] ? throwException[1] : false }; >+ } >+ return new boolean[] { >+ beforeDirty[0] ? throwException[0] : false, >+ beforeDirty[1] }; >+ } else if (returnValues[1] == Save.YES) { >+ return new boolean[] { beforeDirty[0], >+ beforeDirty[1] ? throwException[1] : false }; >+ } >+ return beforeDirty; >+ } else if (beforeDirty[0]) { >+ if (beforeDirty[1]) { >+ return new boolean[] { throwException[0], throwException[1] }; >+ } >+ return new boolean[] { throwException[0], false }; >+ } else if (beforeDirty[1]) { >+ return new boolean[] { false, throwException[1] }; >+ } >+ return new boolean[] { false, false }; >+ } >+ >+ private boolean[] saveCalled(Save[] returnValues, boolean confirm, >+ boolean[] beforeDirty) { >+ if (confirm) { >+ if (returnValues[0] == Save.YES) { >+ if (returnValues[1] == Save.YES) { >+ return new boolean[] { beforeDirty[0], beforeDirty[1] }; >+ } >+ return new boolean[] { beforeDirty[0], false }; >+ } else if (returnValues[1] == Save.YES) { >+ return new boolean[] { false, beforeDirty[1] }; >+ } >+ return new boolean[] { false, false }; >+ } >+ return beforeDirty; >+ } >+ >+ private void testSaveAll(Save[] returnValues, boolean confirm, >+ boolean[] beforeDirty, boolean[] throwException) { >+ if (hasCancel(returnValues, beforeDirty) && confirm) { >+ testSaveAll(returnValues, confirm, beforeDirty, beforeDirty, false, >+ new boolean[] { false, false }, throwException); >+ } else { >+ testSaveAll(returnValues, confirm, beforeDirty, afterDirty( >+ returnValues, confirm, beforeDirty, throwException), >+ isSuccessful(returnValues, confirm, beforeDirty, >+ throwException), saveCalled(returnValues, confirm, >+ beforeDirty), throwException); >+ } >+ } >+ >+ public void testSaveAll_YY_True_TT_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, true, new boolean[] { >+ true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YY_True_TT_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, true, new boolean[] { >+ true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YY_True_TT_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, true, new boolean[] { >+ true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YY_True_TF_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, true, new boolean[] { >+ true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YY_True_TF_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, true, new boolean[] { >+ true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YY_True_TF_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, true, new boolean[] { >+ true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YY_True_TF_FF() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, true, new boolean[] { >+ true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_YY_True_FT_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, true, new boolean[] { >+ false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YY_True_FT_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, true, new boolean[] { >+ false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YY_True_FT_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, true, new boolean[] { >+ false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YY_True_FF_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, true, new boolean[] { >+ false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YY_True_FF_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, true, new boolean[] { >+ false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YY_True_FF_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, true, new boolean[] { >+ false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YY_True_FF_FF() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, true, new boolean[] { >+ false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_YY_False_TT_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, false, new boolean[] { >+ true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YY_False_TT_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, false, new boolean[] { >+ true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YY_False_TT_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, false, new boolean[] { >+ true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YY_False_TF_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, false, new boolean[] { >+ true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YY_False_TF_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, false, new boolean[] { >+ true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YY_False_TF_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, false, new boolean[] { >+ true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YY_False_TF_FF() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, false, new boolean[] { >+ true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_YY_False_FT_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, false, new boolean[] { >+ false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YY_False_FT_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, false, new boolean[] { >+ false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YY_False_FT_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, false, new boolean[] { >+ false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YY_False_FF_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, false, new boolean[] { >+ false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YY_False_FF_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, false, new boolean[] { >+ false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YY_False_FF_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, false, new boolean[] { >+ false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YY_False_FF_FF() { >+ testSaveAll(new Save[] { Save.YES, Save.YES }, false, new boolean[] { >+ false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_YN_True_TT_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, true, new boolean[] { >+ true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YN_True_TT_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, true, new boolean[] { >+ true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YN_True_TT_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, true, new boolean[] { >+ true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YN_True_TF_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, true, new boolean[] { >+ true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YN_True_TF_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, true, new boolean[] { >+ true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YN_True_TF_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, true, new boolean[] { >+ true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YN_True_TF_FF() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, true, new boolean[] { >+ true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_YN_True_FT_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, true, new boolean[] { >+ false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YN_True_FT_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, true, new boolean[] { >+ false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YN_True_FT_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, true, new boolean[] { >+ false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YN_True_FF_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, true, new boolean[] { >+ false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YN_True_FF_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, true, new boolean[] { >+ false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YN_True_FF_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, true, new boolean[] { >+ false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YN_True_FF_FF() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, true, new boolean[] { >+ false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_YN_False_TT_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, false, new boolean[] { >+ true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YN_False_TT_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, false, new boolean[] { >+ true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YN_False_TT_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, false, new boolean[] { >+ true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YN_False_TF_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, false, new boolean[] { >+ true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YN_False_TF_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, false, new boolean[] { >+ true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YN_False_TF_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, false, new boolean[] { >+ true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YN_False_TF_FF() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, false, new boolean[] { >+ true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_YN_False_FT_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, false, new boolean[] { >+ false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YN_False_FT_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, false, new boolean[] { >+ false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YN_False_FT_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, false, new boolean[] { >+ false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YN_False_FF_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, false, new boolean[] { >+ false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YN_False_FF_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, false, new boolean[] { >+ false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YN_False_FF_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, false, new boolean[] { >+ false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YN_False_FF_FF() { >+ testSaveAll(new Save[] { Save.YES, Save.NO }, false, new boolean[] { >+ false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_YC_True_TT_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, true, new boolean[] { >+ true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YC_True_TT_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, true, new boolean[] { >+ true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YC_True_TT_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, true, new boolean[] { >+ true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YC_True_TF_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, true, new boolean[] { >+ true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YC_True_TF_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, true, new boolean[] { >+ true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YC_True_TF_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, true, new boolean[] { >+ true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YC_True_TF_FF() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, true, new boolean[] { >+ true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_YC_True_FT_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, true, new boolean[] { >+ false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YC_True_FT_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, true, new boolean[] { >+ false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YC_True_FT_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, true, new boolean[] { >+ false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YC_True_FF_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, true, new boolean[] { >+ false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YC_True_FF_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, true, new boolean[] { >+ false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YC_True_FF_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, true, new boolean[] { >+ false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YC_True_FF_FF() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, true, new boolean[] { >+ false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_YC_False_TT_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, false, new boolean[] { >+ true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YC_False_TT_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, false, new boolean[] { >+ true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YC_False_TT_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, false, new boolean[] { >+ true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YC_False_TF_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, false, new boolean[] { >+ true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YC_False_TF_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, false, new boolean[] { >+ true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YC_False_TF_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, false, new boolean[] { >+ true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YC_False_TF_FF() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, false, new boolean[] { >+ true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_YC_False_FT_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, false, new boolean[] { >+ false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YC_False_FT_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, false, new boolean[] { >+ false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YC_False_FT_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, false, new boolean[] { >+ false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YC_False_FF_TT() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, false, new boolean[] { >+ false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_YC_False_FF_TF() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, false, new boolean[] { >+ false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_YC_False_FF_FT() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, false, new boolean[] { >+ false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_YC_False_FF_FF() { >+ testSaveAll(new Save[] { Save.YES, Save.CANCEL }, false, new boolean[] { >+ false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_NY_True_TT_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, true, new boolean[] { >+ true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NY_True_TT_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, true, new boolean[] { >+ true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NY_True_TT_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, true, new boolean[] { >+ true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NY_True_TF_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, true, new boolean[] { >+ true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NY_True_TF_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, true, new boolean[] { >+ true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NY_True_TF_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, true, new boolean[] { >+ true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NY_True_TF_FF() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, true, new boolean[] { >+ true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_NY_True_FT_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, true, new boolean[] { >+ false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NY_True_FT_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, true, new boolean[] { >+ false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NY_True_FT_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, true, new boolean[] { >+ false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NY_True_FF_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, true, new boolean[] { >+ false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NY_True_FF_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, true, new boolean[] { >+ false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NY_True_FF_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, true, new boolean[] { >+ false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NY_True_FF_FF() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, true, new boolean[] { >+ false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_NY_False_TT_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, false, new boolean[] { >+ true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NY_False_TT_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, false, new boolean[] { >+ true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NY_False_TT_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, false, new boolean[] { >+ true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NY_False_TF_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, false, new boolean[] { >+ true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NY_False_TF_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, false, new boolean[] { >+ true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NY_False_TF_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, false, new boolean[] { >+ true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NY_False_TF_FF() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, false, new boolean[] { >+ true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_NY_False_FT_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, false, new boolean[] { >+ false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NY_False_FT_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, false, new boolean[] { >+ false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NY_False_FT_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, false, new boolean[] { >+ false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NY_False_FF_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, false, new boolean[] { >+ false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NY_False_FF_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, false, new boolean[] { >+ false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NY_False_FF_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, false, new boolean[] { >+ false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NY_False_FF_FF() { >+ testSaveAll(new Save[] { Save.NO, Save.YES }, false, new boolean[] { >+ false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_NN_True_TT_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, true, new boolean[] { >+ true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NN_True_TT_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, true, new boolean[] { >+ true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NN_True_TT_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, true, new boolean[] { >+ true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NN_True_TF_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, true, new boolean[] { >+ true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NN_True_TF_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, true, new boolean[] { >+ true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NN_True_TF_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, true, new boolean[] { >+ true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NN_True_TF_FF() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, true, new boolean[] { >+ true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_NN_True_FT_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, true, new boolean[] { >+ false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NN_True_FT_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, true, new boolean[] { >+ false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NN_True_FT_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, true, new boolean[] { >+ false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NN_True_FF_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, true, new boolean[] { >+ false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NN_True_FF_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, true, new boolean[] { >+ false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NN_True_FF_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, true, new boolean[] { >+ false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NN_True_FF_FF() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, true, new boolean[] { >+ false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_NN_False_TT_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, false, new boolean[] { >+ true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NN_False_TT_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, false, new boolean[] { >+ true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NN_False_TT_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, false, new boolean[] { >+ true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NN_False_TF_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, false, new boolean[] { >+ true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NN_False_TF_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, false, new boolean[] { >+ true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NN_False_TF_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, false, new boolean[] { >+ true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NN_False_TF_FF() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, false, new boolean[] { >+ true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_NN_False_FT_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, false, new boolean[] { >+ false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NN_False_FT_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, false, new boolean[] { >+ false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NN_False_FT_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, false, new boolean[] { >+ false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NN_False_FF_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, false, new boolean[] { >+ false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NN_False_FF_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, false, new boolean[] { >+ false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NN_False_FF_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, false, new boolean[] { >+ false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NN_False_FF_FF() { >+ testSaveAll(new Save[] { Save.NO, Save.NO }, false, new boolean[] { >+ false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_NC_True_TT_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, true, new boolean[] { >+ true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NC_True_TT_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, true, new boolean[] { >+ true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NC_True_TT_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, true, new boolean[] { >+ true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NC_True_TF_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, true, new boolean[] { >+ true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NC_True_TF_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, true, new boolean[] { >+ true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NC_True_TF_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, true, new boolean[] { >+ true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NC_True_TF_FF() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, true, new boolean[] { >+ true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_NC_True_FT_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, true, new boolean[] { >+ false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NC_True_FT_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, true, new boolean[] { >+ false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NC_True_FT_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, true, new boolean[] { >+ false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NC_True_FF_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, true, new boolean[] { >+ false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NC_True_FF_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, true, new boolean[] { >+ false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NC_True_FF_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, true, new boolean[] { >+ false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NC_True_FF_FF() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, true, new boolean[] { >+ false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_NC_False_TT_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, false, new boolean[] { >+ true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NC_False_TT_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, false, new boolean[] { >+ true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NC_False_TT_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, false, new boolean[] { >+ true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NC_False_TF_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, false, new boolean[] { >+ true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NC_False_TF_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, false, new boolean[] { >+ true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NC_False_TF_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, false, new boolean[] { >+ true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NC_False_TF_FF() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, false, new boolean[] { >+ true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_NC_False_FT_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, false, new boolean[] { >+ false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NC_False_FT_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, false, new boolean[] { >+ false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NC_False_FT_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, false, new boolean[] { >+ false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NC_False_FF_TT() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, false, new boolean[] { >+ false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_NC_False_FF_TF() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, false, new boolean[] { >+ false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_NC_False_FF_FT() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, false, new boolean[] { >+ false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_NC_False_FF_FF() { >+ testSaveAll(new Save[] { Save.NO, Save.CANCEL }, false, new boolean[] { >+ false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_CY_True_TT_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, true, new boolean[] { >+ true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CY_True_TT_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, true, new boolean[] { >+ true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CY_True_TT_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, true, new boolean[] { >+ true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CY_True_TF_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, true, new boolean[] { >+ true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CY_True_TF_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, true, new boolean[] { >+ true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CY_True_TF_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, true, new boolean[] { >+ true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CY_True_TF_FF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, true, new boolean[] { >+ true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_CY_True_FT_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, true, new boolean[] { >+ false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CY_True_FT_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, true, new boolean[] { >+ false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CY_True_FT_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, true, new boolean[] { >+ false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CY_True_FF_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, true, new boolean[] { >+ false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CY_True_FF_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, true, new boolean[] { >+ false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CY_True_FF_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, true, new boolean[] { >+ false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CY_True_FF_FF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, true, new boolean[] { >+ false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_CY_False_TT_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, false, new boolean[] { >+ true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CY_False_TT_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, false, new boolean[] { >+ true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CY_False_TT_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, false, new boolean[] { >+ true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CY_False_TF_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, false, new boolean[] { >+ true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CY_False_TF_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, false, new boolean[] { >+ true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CY_False_TF_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, false, new boolean[] { >+ true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CY_False_TF_FF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, false, new boolean[] { >+ true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_CY_False_FT_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, false, new boolean[] { >+ false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CY_False_FT_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, false, new boolean[] { >+ false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CY_False_FT_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, false, new boolean[] { >+ false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CY_False_FF_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, false, new boolean[] { >+ false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CY_False_FF_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, false, new boolean[] { >+ false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CY_False_FF_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, false, new boolean[] { >+ false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CY_False_FF_FF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.YES }, false, new boolean[] { >+ false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_CN_True_TT_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, true, new boolean[] { >+ true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CN_True_TT_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, true, new boolean[] { >+ true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CN_True_TT_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, true, new boolean[] { >+ true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CN_True_TF_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, true, new boolean[] { >+ true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CN_True_TF_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, true, new boolean[] { >+ true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CN_True_TF_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, true, new boolean[] { >+ true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CN_True_TF_FF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, true, new boolean[] { >+ true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_CN_True_FT_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, true, new boolean[] { >+ false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CN_True_FT_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, true, new boolean[] { >+ false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CN_True_FT_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, true, new boolean[] { >+ false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CN_True_FF_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, true, new boolean[] { >+ false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CN_True_FF_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, true, new boolean[] { >+ false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CN_True_FF_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, true, new boolean[] { >+ false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CN_True_FF_FF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, true, new boolean[] { >+ false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_CN_False_TT_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, false, new boolean[] { >+ true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CN_False_TT_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, false, new boolean[] { >+ true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CN_False_TT_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, false, new boolean[] { >+ true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CN_False_TF_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, false, new boolean[] { >+ true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CN_False_TF_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, false, new boolean[] { >+ true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CN_False_TF_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, false, new boolean[] { >+ true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CN_False_TF_FF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, false, new boolean[] { >+ true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_CN_False_FT_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, false, new boolean[] { >+ false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CN_False_FT_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, false, new boolean[] { >+ false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CN_False_FT_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, false, new boolean[] { >+ false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CN_False_FF_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, false, new boolean[] { >+ false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CN_False_FF_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, false, new boolean[] { >+ false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CN_False_FF_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, false, new boolean[] { >+ false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CN_False_FF_FF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.NO }, false, new boolean[] { >+ false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_CC_True_TT_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, true, >+ new boolean[] { true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CC_True_TT_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, true, >+ new boolean[] { true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CC_True_TT_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, true, >+ new boolean[] { true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CC_True_TF_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, true, >+ new boolean[] { true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CC_True_TF_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, true, >+ new boolean[] { true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CC_True_TF_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, true, >+ new boolean[] { true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CC_True_TF_FF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, true, >+ new boolean[] { true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_CC_True_FT_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, true, >+ new boolean[] { false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CC_True_FT_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, true, >+ new boolean[] { false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CC_True_FT_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, true, >+ new boolean[] { false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CC_True_FF_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, true, >+ new boolean[] { false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CC_True_FF_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, true, >+ new boolean[] { false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CC_True_FF_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, true, >+ new boolean[] { false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CC_True_FF_FF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, true, >+ new boolean[] { false, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_CC_False_TT_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, false, >+ new boolean[] { true, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CC_False_TT_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, false, >+ new boolean[] { true, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CC_False_TT_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, false, >+ new boolean[] { true, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CC_False_TF_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, false, >+ new boolean[] { true, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CC_False_TF_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, false, >+ new boolean[] { true, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CC_False_TF_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, false, >+ new boolean[] { true, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CC_False_TF_FF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, false, >+ new boolean[] { true, false }, new boolean[] { false, false }); >+ } >+ >+ public void testSaveAll_CC_False_FT_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, false, >+ new boolean[] { false, true }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CC_False_FT_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, false, >+ new boolean[] { false, true }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CC_False_FT_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, false, >+ new boolean[] { false, true }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CC_False_FF_TT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, false, >+ new boolean[] { false, false }, new boolean[] { true, true }); >+ } >+ >+ public void testSaveAll_CC_False_FF_TF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, false, >+ new boolean[] { false, false }, new boolean[] { true, false }); >+ } >+ >+ public void testSaveAll_CC_False_FF_FT() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, false, >+ new boolean[] { false, false }, new boolean[] { false, true }); >+ } >+ >+ public void testSaveAll_CC_False_FF_FF() { >+ testSaveAll(new Save[] { Save.CANCEL, Save.CANCEL }, false, >+ new boolean[] { false, false }, new boolean[] { false, false }); >+ } >+ > public void testSwitchWindows() { > // create an application with two windows > MApplication application = MApplicationFactory.eINSTANCE >#P org.eclipse.e4.ui.workbench >Index: src/org/eclipse/e4/workbench/modeling/EPartService.java >=================================================================== >RCS file: /cvsroot/eclipse/e4/org.eclipse.e4.ui/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/modeling/EPartService.java,v >retrieving revision 1.8 >diff -u -r1.8 EPartService.java >--- src/org/eclipse/e4/workbench/modeling/EPartService.java 28 Jan 2010 12:50:04 -0000 1.8 >+++ src/org/eclipse/e4/workbench/modeling/EPartService.java 28 Jan 2010 17:34:58 -0000 >@@ -163,6 +163,15 @@ > */ > public boolean savePart(MSaveablePart part, boolean confirm); > >+ /** >+ * Saves the contents of all dirty parts and returns whether the operation completed. >+ * >+ * @param confirm >+ * <code>true</code> if the user should be prompted prior to saving the changes, and >+ * <code>false</code> to save changes without asking >+ * @return <code>true</code> if the operation completed successfully, <code>false</code> if the >+ * user canceled the operation or if an error occurred while saving the changes >+ */ > public boolean saveAll(boolean confirm); > > } >Index: src/org/eclipse/e4/workbench/modeling/ISaveHandler.java >=================================================================== >RCS file: /cvsroot/eclipse/e4/org.eclipse.e4.ui/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/modeling/ISaveHandler.java,v >retrieving revision 1.1 >diff -u -r1.1 ISaveHandler.java >--- src/org/eclipse/e4/workbench/modeling/ISaveHandler.java 28 Jan 2010 12:50:04 -0000 1.1 >+++ src/org/eclipse/e4/workbench/modeling/ISaveHandler.java 28 Jan 2010 17:34:58 -0000 >@@ -20,8 +20,8 @@ > YES, NO, CANCEL > } > >- public Save promptToSave(MSaveablePart saveablePart); >+ public Save promptToSave(MSaveablePart dirtyPart); > >- public Save[] promptToSave(Collection<MSaveablePart> saveablePart); >+ public Save[] promptToSave(Collection<MSaveablePart> dirtyParts); > > } >Index: src/org/eclipse/e4/workbench/ui/internal/PartServiceImpl.java >=================================================================== >RCS file: /cvsroot/eclipse/e4/org.eclipse.e4.ui/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/internal/PartServiceImpl.java,v >retrieving revision 1.17 >diff -u -r1.17 PartServiceImpl.java >--- src/org/eclipse/e4/workbench/ui/internal/PartServiceImpl.java 28 Jan 2010 12:50:05 -0000 1.17 >+++ src/org/eclipse/e4/workbench/ui/internal/PartServiceImpl.java 28 Jan 2010 17:34:58 -0000 >@@ -39,6 +39,7 @@ > import org.eclipse.e4.workbench.modeling.EModelService; > import org.eclipse.e4.workbench.modeling.EPartService; > import org.eclipse.e4.workbench.modeling.ISaveHandler; >+import org.eclipse.e4.workbench.modeling.ISaveHandler.Save; > import org.eclipse.e4.workbench.ui.IPresentationEngine; > import org.eclipse.e4.workbench.ui.UIEvents; > import org.eclipse.emf.ecore.EObject; >@@ -386,6 +387,37 @@ > } > > public boolean saveAll(boolean confirm) { >- return false; >+ Collection<MSaveablePart> dirtyParts = getDirtyParts(); >+ if (dirtyParts.isEmpty()) { >+ return true; >+ } >+ >+ if (confirm) { >+ List<MSaveablePart> dirtyPartsList = new ArrayList<MSaveablePart>(dirtyParts); >+ Save[] decisions = saveHandler.promptToSave(dirtyParts); >+ for (Save decision : decisions) { >+ if (decision == Save.CANCEL) { >+ return false; >+ } >+ } >+ >+ boolean success = true; >+ for (int i = 0; i < decisions.length; i++) { >+ if (decisions[i] == Save.YES) { >+ if (!savePart(dirtyPartsList.get(i), false)) { >+ success = false; >+ } >+ } >+ } >+ return success; >+ } >+ >+ boolean success = true; >+ for (MSaveablePart dirtyPart : dirtyParts) { >+ if (!savePart(dirtyPart, false)) { >+ success = false; >+ } >+ } >+ return success; > } > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 295003
:
153159
|
153273
|
153815
|
155410
|
155599
|
155880
|
156933
|
157181
|
157513
| 157542