|
|
|
@ -340,6 +340,41 @@ public class RefSpecTest {
|
|
|
|
|
assertEquals("refs/heads/foo", c.getSource()); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testWildcardAfterText1() { |
|
|
|
|
RefSpec a = new RefSpec("refs/heads/*/for-linus:refs/remotes/mine/*-blah"); |
|
|
|
|
assertTrue(a.isWildcard()); |
|
|
|
|
assertTrue(a.matchDestination("refs/remotes/mine/x-blah")); |
|
|
|
|
assertTrue(a.matchDestination("refs/remotes/mine/foo-blah")); |
|
|
|
|
assertTrue(a.matchDestination("refs/remotes/mine/foo/x-blah")); |
|
|
|
|
assertFalse(a.matchDestination("refs/remotes/origin/foo/x-blah")); |
|
|
|
|
|
|
|
|
|
RefSpec b = a.expandFromSource("refs/heads/foo/for-linus"); |
|
|
|
|
assertEquals("refs/remotes/mine/foo-blah", b.getDestination()); |
|
|
|
|
RefSpec c = a.expandFromDestination("refs/remotes/mine/foo-blah"); |
|
|
|
|
assertEquals("refs/heads/foo/for-linus", c.getSource()); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testWildcardAfterText2() { |
|
|
|
|
RefSpec a = new RefSpec("refs/heads*/for-linus:refs/remotes/mine/*"); |
|
|
|
|
assertTrue(a.isWildcard()); |
|
|
|
|
assertTrue(a.matchSource("refs/headsx/for-linus")); |
|
|
|
|
assertTrue(a.matchSource("refs/headsfoo/for-linus")); |
|
|
|
|
assertTrue(a.matchSource("refs/headsx/foo/for-linus")); |
|
|
|
|
assertFalse(a.matchSource("refs/headx/for-linus")); |
|
|
|
|
|
|
|
|
|
RefSpec b = a.expandFromSource("refs/headsx/for-linus"); |
|
|
|
|
assertEquals("refs/remotes/mine/x", b.getDestination()); |
|
|
|
|
RefSpec c = a.expandFromDestination("refs/remotes/mine/x"); |
|
|
|
|
assertEquals("refs/headsx/for-linus", c.getSource()); |
|
|
|
|
|
|
|
|
|
RefSpec d = a.expandFromSource("refs/headsx/foo/for-linus"); |
|
|
|
|
assertEquals("refs/remotes/mine/x/foo", d.getDestination()); |
|
|
|
|
RefSpec e = a.expandFromDestination("refs/remotes/mine/x/foo"); |
|
|
|
|
assertEquals("refs/headsx/foo/for-linus", e.getSource()); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testWildcardMirror() { |
|
|
|
|
RefSpec a = new RefSpec("*:*"); |
|
|
|
@ -403,21 +438,6 @@ public class RefSpecTest {
|
|
|
|
|
assertNotNull(new RefSpec("refs/heads/*:refs/heads/*/*")); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test(expected = IllegalArgumentException.class) |
|
|
|
|
public void invalidWhenWildcardAfterText() { |
|
|
|
|
assertNotNull(new RefSpec("refs/heads/wrong*:refs/heads/right/*")); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test(expected = IllegalArgumentException.class) |
|
|
|
|
public void invalidWhenWildcardBeforeText() { |
|
|
|
|
assertNotNull(new RefSpec("*wrong:right/*")); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test(expected = IllegalArgumentException.class) |
|
|
|
|
public void invalidWhenWildcardBeforeTextAtEnd() { |
|
|
|
|
assertNotNull(new RefSpec("refs/heads/*wrong:right/*")); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test(expected = IllegalArgumentException.class) |
|
|
|
|
public void invalidSourceDoubleSlashes() { |
|
|
|
|
assertNotNull(new RefSpec("refs/heads//wrong")); |
|
|
|
|