diff options
author | Mathias Kinzler | 2011-03-21 14:26:09 +0000 |
---|---|---|
committer | Jens Baumgart | 2011-03-21 17:56:56 +0000 |
commit | 0b662fd4d14ebca7c3328f4c3e1f5e4f497a63d4 (patch) | |
tree | 4b98f41240f62ffa9664f08a866c8b97e49ed570 /org.eclipse.egit.ui.test | |
parent | 596abbaaf042b9f8e9995caa173d2711594f82c7 (diff) | |
download | egit-0b662fd4d14ebca7c3328f4c3e1f5e4f497a63d4.tar.gz egit-0b662fd4d14ebca7c3328f4c3e1f5e4f497a63d4.tar.xz egit-0b662fd4d14ebca7c3328f4c3e1f5e4f497a63d4.zip |
UI Test: use join to synchronize GitRepositoriesViewTagHandlingTest
GitRepositoriesViewTagHandlingTest currently fails on Hudson. This
change may or may not help here, but in any case, synchronization with
the job should by via join instead of via a job change listener.
Change-Id: I7bb01903a4e515089f17f064de90dd2bf292247d
Signed-off-by: Mathias Kinzler <mathias.kinzler@sap.com>
Diffstat (limited to 'org.eclipse.egit.ui.test')
-rw-r--r-- | org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/view/repositories/GitRepositoriesViewTagHandlingTest.java | 91 |
1 files changed, 30 insertions, 61 deletions
diff --git a/org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/view/repositories/GitRepositoriesViewTagHandlingTest.java b/org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/view/repositories/GitRepositoriesViewTagHandlingTest.java index ac662d915b..b973cad214 100644 --- a/org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/view/repositories/GitRepositoriesViewTagHandlingTest.java +++ b/org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/view/repositories/GitRepositoriesViewTagHandlingTest.java @@ -18,11 +18,9 @@ import java.io.File; import org.eclipse.core.resources.IResource; import org.eclipse.core.resources.ResourcesPlugin; -import org.eclipse.core.runtime.jobs.IJobChangeEvent; -import org.eclipse.core.runtime.jobs.IJobChangeListener; import org.eclipse.core.runtime.jobs.Job; -import org.eclipse.core.runtime.jobs.JobChangeAdapter; import org.eclipse.egit.ui.Activator; +import org.eclipse.egit.ui.JobFamilies; import org.eclipse.egit.ui.UIText; import org.eclipse.egit.ui.test.ContextMenuHelper; import org.eclipse.jface.dialogs.IDialogConstants; @@ -33,7 +31,6 @@ import org.eclipse.jgit.lib.Repository; import org.eclipse.jgit.revwalk.RevCommit; import org.eclipse.jgit.revwalk.RevTag; import org.eclipse.jgit.revwalk.RevWalk; -import org.eclipse.osgi.util.NLS; import org.eclipse.swtbot.swt.finder.junit.SWTBotJunit4ClassRunner; import org.eclipse.swtbot.swt.finder.widgets.SWTBotShell; import org.eclipse.swtbot.swt.finder.widgets.SWTBotTree; @@ -104,63 +101,35 @@ public class GitRepositoriesViewTagHandlingTest extends @Test public void testResetToTag() throws Exception { SWTBotTree tree = getOrOpenView().bot().tree(); - IJobChangeListener listener = null; - try { - String initialContent = getTestFileContent(); - createTag("ResetToFirst", "The first tag"); - touchAndSubmit(null); - String newContent = getTestFileContent(); - assertFalse("Wrong content", initialContent.equals(newContent)); - createTag("ResetToSecond", "The second tag"); - refreshAndWait(); - myRepoViewUtil.getTagsItem(tree, repositoryFile).expand().getNode( - "ResetToFirst").select(); - - final boolean[] done = new boolean[] { false }; - - final String jobName = NLS.bind(UIText.ResetAction_reset, - "refs/tags/ResetToFirst"); - - listener = new JobChangeAdapter() { - - @Override - public void done(IJobChangeEvent event) { - if (jobName.equals(event.getJob().getName())) - done[0] = true; - } - - }; - - Job.getJobManager().addJobChangeListener(listener); - - ContextMenuHelper.clickContextMenu(tree, myUtil - .getPluginLocalizedValue("ResetCommand")); - - SWTBotShell resetDialog = bot - .shell(UIText.ResetCommand_WizardTitle); - resetDialog.bot().radio(UIText.ResetTargetSelectionDialog_ResetTypeHardButton).click(); - waitInUI(); - resetDialog.bot().button(IDialogConstants.FINISH_LABEL).click(); - waitInUI(); - - bot.shell(UIText.ResetTargetSelectionDialog_ResetQuestion).bot() - .button(IDialogConstants.YES_LABEL).click(); - - for (int i = 0; i < 1000; i++) { - if (done[0]) - break; - Thread.sleep(10); - } - - assertTrue("Job should be completed", done[0]); - - ResourcesPlugin.getWorkspace().getRoot().refreshLocal( - IResource.DEPTH_INFINITE, null); - assertEquals("Wrong content", initialContent, getTestFileContent()); - } finally { - if (listener != null) - Job.getJobManager().removeJobChangeListener(listener); - } + + String initialContent = getTestFileContent(); + createTag("ResetToFirst", "The first tag"); + touchAndSubmit(null); + String newContent = getTestFileContent(); + assertFalse("Wrong content", initialContent.equals(newContent)); + createTag("ResetToSecond", "The second tag"); + refreshAndWait(); + myRepoViewUtil.getTagsItem(tree, repositoryFile).expand().getNode( + "ResetToFirst").select(); + + ContextMenuHelper.clickContextMenu(tree, myUtil + .getPluginLocalizedValue("ResetCommand")); + + SWTBotShell resetDialog = bot.shell(UIText.ResetCommand_WizardTitle); + resetDialog.bot().radio( + UIText.ResetTargetSelectionDialog_ResetTypeHardButton).click(); + waitInUI(); + resetDialog.bot().button(IDialogConstants.FINISH_LABEL).click(); + waitInUI(); + + bot.shell(UIText.ResetTargetSelectionDialog_ResetQuestion).bot() + .button(IDialogConstants.YES_LABEL).click(); + + Job.getJobManager().join(JobFamilies.RESET, null); + + ResourcesPlugin.getWorkspace().getRoot().refreshLocal( + IResource.DEPTH_INFINITE, null); + assertEquals("Wrong content", initialContent, getTestFileContent()); } private String getCommitIdOfTag(String tagName) throws Exception { |