diff options
author | Robin Rosenberg <robin.rosenberg@dewire.com> | 2013-12-27 16:31:32 +0100 |
---|---|---|
committer | Matthias Sohn <matthias.sohn@sap.com> | 2014-02-05 10:47:12 +0100 |
commit | e03f18941f5d996d23bc004ad63049bcfc0e53d3 (patch) | |
tree | 647dc5a0d092cdf86ab4a8be86e2543fea32bb67 /org.eclipse.jgit.test | |
parent | 08fd639c0d8fd1aebf96106b1d2ad67818c7ebd9 (diff) | |
download | jgit-e03f18941f5d996d23bc004ad63049bcfc0e53d3.tar.gz jgit-e03f18941f5d996d23bc004ad63049bcfc0e53d3.zip |
Ban dangerous ref names in Windows
Bug: 423551
Change-Id: I3e71ef1b4a8181f46d2902c9169859f150cd6ad0
Also-By: Robin Stocker <robin@nibor.org>
Signed-off-by: Robin Rosenberg <robin.rosenberg@dewire.com>
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
Diffstat (limited to 'org.eclipse.jgit.test')
-rw-r--r-- | org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ValidRefNameTest.java | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ValidRefNameTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ValidRefNameTest.java index 08d675bc04..2f8bfb3fdd 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ValidRefNameTest.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ValidRefNameTest.java @@ -45,6 +45,8 @@ package org.eclipse.jgit.lib; import static org.eclipse.jgit.junit.Assert.assertEquals; +import org.eclipse.jgit.junit.MockSystemReader; +import org.eclipse.jgit.util.SystemReader; import org.junit.Test; public class ValidRefNameTest { @@ -192,4 +194,25 @@ public class ValidRefNameTest { assertValid(false, "refs/heads/master@{1}"); assertValid(false, "refs/heads/master@{1.hour.ago}"); } + + @Test + public void testWindowsReservedNames() { + SystemReader original = SystemReader.getInstance(); + try { + SystemReader.setInstance(new MockSystemReader() { + public boolean isWindows() { + return true; + } + }); + // re-using code from DirCacheCheckoutTest, hence + // only testing for one of the special names. + assertValid(false, "refs/heads/con"); + assertValid(false, "refs/con/x"); + assertValid(false, "con/heads/x"); + assertValid(true, "refs/heads/conx"); + assertValid(true, "refs/heads/xcon"); + } finally { + SystemReader.setInstance(original); + } + } } |