Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin Sawicki2011-04-23 00:29:48 +0000
committerChris Aniszczyk2011-04-28 17:06:27 +0000
commitbfc867ee6ee0ae1c9b9c6fa24db09eec141919eb (patch)
treebb30dd4644829d578868b767958a748edd3c18f1 /org.eclipse.egit.ui.test/src/org
parentc3d63bf11eb61968623865806057493b7dc3ad0a (diff)
downloadegit-bfc867ee6ee0ae1c9b9c6fa24db09eec141919eb.tar.gz
egit-bfc867ee6ee0ae1c9b9c6fa24db09eec141919eb.tar.xz
egit-bfc867ee6ee0ae1c9b9c6fa24db09eec141919eb.zip
Add persistence support for commit editor input
Bug: 343000 Change-Id: I32ee9168d500edfd7c038e954f1c4c9c49804617 Signed-off-by: Kevin Sawicki <kevin@github.com> Signed-off-by: Chris Aniszczyk <caniszczyk@gmail.com>
Diffstat (limited to 'org.eclipse.egit.ui.test/src/org')
-rw-r--r--org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/test/commit/CommitEditorInputFactoryTest.java76
-rw-r--r--org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/test/commit/CommitEditorInputTest.java2
2 files changed, 78 insertions, 0 deletions
diff --git a/org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/test/commit/CommitEditorInputFactoryTest.java b/org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/test/commit/CommitEditorInputFactoryTest.java
new file mode 100644
index 0000000000..9419d399b9
--- /dev/null
+++ b/org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/test/commit/CommitEditorInputFactoryTest.java
@@ -0,0 +1,76 @@
+/*******************************************************************************
+ * Copyright (c) 2011 GitHub Inc.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Kevin Sawicki (GitHub Inc.) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.egit.ui.test.commit;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+
+import java.io.File;
+
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.egit.core.Activator;
+import org.eclipse.egit.ui.common.LocalRepositoryTestCase;
+import org.eclipse.egit.ui.internal.commit.CommitEditorInput;
+import org.eclipse.egit.ui.internal.commit.CommitEditorInputFactory;
+import org.eclipse.egit.ui.internal.commit.RepositoryCommit;
+import org.eclipse.jgit.lib.Constants;
+import org.eclipse.jgit.lib.Repository;
+import org.eclipse.jgit.revwalk.RevCommit;
+import org.eclipse.jgit.revwalk.RevWalk;
+import org.eclipse.ui.XMLMemento;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+/**
+ * Unit tests of {@link CommitEditorInputFactory}
+ */
+public class CommitEditorInputFactoryTest extends LocalRepositoryTestCase {
+
+ private static Repository repository;
+
+ private static RevCommit commit;
+
+ @BeforeClass
+ public static void setup() throws Exception {
+ File repoFile = createProjectAndCommitToRepository();
+ assertNotNull(repoFile);
+ repository = Activator.getDefault().getRepositoryCache()
+ .lookupRepository(repoFile);
+ assertNotNull(repository);
+
+ RevWalk walk = new RevWalk(repository);
+ try {
+ commit = walk.parseCommit(repository.resolve(Constants.HEAD));
+ assertNotNull(commit);
+ } finally {
+ walk.release();
+ }
+ }
+
+ @Test
+ public void testPersistable() {
+ CommitEditorInput input = new CommitEditorInput(new RepositoryCommit(
+ repository, commit));
+ XMLMemento memento = XMLMemento.createWriteRoot("test");
+ input.getPersistable().saveState(memento);
+ CommitEditorInputFactory factory = new CommitEditorInputFactory();
+ IAdaptable created = factory.createElement(memento);
+ assertNotNull(created);
+ assertTrue(created instanceof CommitEditorInput);
+ CommitEditorInput createdInput = (CommitEditorInput) created;
+ assertEquals(input.getCommit().getRevCommit().name(), createdInput
+ .getCommit().getRevCommit().name());
+ assertEquals(input.getCommit().getRepository().getDirectory(),
+ createdInput.getCommit().getRepository().getDirectory());
+ }
+
+}
diff --git a/org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/test/commit/CommitEditorInputTest.java b/org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/test/commit/CommitEditorInputTest.java
index 4d72360d04..199773bfad 100644
--- a/org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/test/commit/CommitEditorInputTest.java
+++ b/org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/test/commit/CommitEditorInputTest.java
@@ -79,6 +79,8 @@ public class CommitEditorInputTest extends LocalRepositoryTestCase {
assertNotNull(input.getImageDescriptor());
assertNotNull(input.getToolTipText());
assertNotNull(input.getName());
+ assertEquals(repoCommit, input.getCommit());
+ assertNotNull(input.getPersistable());
}
}

Back to the top