1 package fr.jayasoft.ivy.version; 2 3 import fr.jayasoft.ivy.ModuleRevisionId; 4 import fr.jayasoft.ivy.latest.LatestRevisionStrategy; 5 import junit.framework.TestCase; 6 7 public class VersionRangeMatcherTest extends TestCase { 8 VersionMatcher _vm = new VersionRangeMatcher("range", new LatestRevisionStrategy()); 9 10 public VersionRangeMatcherTest() { 11 } 12 13 public void testDynamic() { 14 assertDynamic("lastest.integration", false); 15 assertDynamic("[1.0]", false); 16 assertDynamic("(1.0)", false); 17 assertDynamic("(1.0,2.0)", false); 18 assertDynamic("[1.0;2.0]", false); 19 20 assertDynamic("[1.0,2.0]", true); 21 assertDynamic("[1.0,2.0[", true); 22 assertDynamic("]1.0,2.0[", true); 23 assertDynamic("]1.0,2.0]", true); 24 assertDynamic("[1.0,)", true); 25 assertDynamic("(,1.0]", true); 26 } 27 28 public void testIncludingFinite() { 29 assertAccept("[1.0,2.0]", "1.1", true); 30 assertAccept("[1.0,2.0]", "0.9", false); 31 assertAccept("[1.0,2.0]", "2.1", false); 32 assertAccept("[1.0,2.0]", "1.0", true); 33 assertAccept("[1.0,2.0]", "2.0", true); 34 } 35 36 public void testExcludingFinite() { 37 assertAccept("]1.0,2.0[", "1.1", true); 38 assertAccept("]1.0,2.0[", "0.9", false); 39 assertAccept("]1.0,2.0[", "2.1", false); 40 41 assertAccept("]1.0,2.0]", "1.0", false); 42 assertAccept("]1.0,2.0[", "1.0", false); 43 assertAccept("[1.0,2.0[", "1.0", true); 44 45 assertAccept("[1.0,2.0[", "2.0", false); 46 assertAccept("]1.0,2.0[", "2.0", false); 47 assertAccept("]1.0,2.0]", "2.0", true); 48 } 49 50 public void testIncludingInfinite() { 51 assertAccept("[1.0,)", "1.1", true); 52 assertAccept("[1.0,)", "2.0", true); 53 assertAccept("[1.0,)", "3.5.6", true); 54 assertAccept("[1.0,)", "1.0", true); 55 56 assertAccept("[1.0,)", "0.9", false); 57 58 assertAccept("(,2.0]", "1.1", true); 59 assertAccept("(,2.0]", "0.1", true); 60 assertAccept("(,2.0]", "0.2.4", true); 61 assertAccept("(,2.0]", "2.0", true); 62 63 assertAccept("(,2.0]", "2.3", false); 64 } 65 66 public void testExcludingInfinite() { 67 assertAccept("]1.0,)", "1.1", true); 68 assertAccept("]1.0,)", "2.0", true); 69 assertAccept("]1.0,)", "3.5.6", true); 70 71 assertAccept("]1.0,)", "1.0", false); 72 assertAccept("]1.0,)", "0.9", false); 73 74 assertAccept("(,2.0[", "1.1", true); 75 assertAccept("(,2.0[", "0.1", true); 76 assertAccept("(,2.0[", "0.2.4", true); 77 78 assertAccept("(,2.0[", "2.0", false); 79 assertAccept("(,2.0[", "2.3", false); 80 } 81 82 83 85 private void assertDynamic(String askedVersion, boolean b) { 86 assertEquals(b, _vm.isDynamic(ModuleRevisionId.newInstance("org", "name", askedVersion))); 87 } 88 89 private void assertAccept(String askedVersion, String depVersion, boolean b) { 90 assertEquals(b, _vm.accept( 91 ModuleRevisionId.newInstance("org", "name", askedVersion), 92 ModuleRevisionId.newInstance("org", "name", depVersion))); 93 } 94 } 95 | Popular Tags |