Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMathias Kinzler2011-03-21 14:26:09 +0000
committerJens Baumgart2011-03-21 17:56:56 +0000
commit0b662fd4d14ebca7c3328f4c3e1f5e4f497a63d4 (patch)
tree4b98f41240f62ffa9664f08a866c8b97e49ed570 /org.eclipse.egit.ui.test
parent596abbaaf042b9f8e9995caa173d2711594f82c7 (diff)
downloadegit-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.java91
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 {

Back to the top