1 package org.apache.maven.plugin.invoker;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.util.ArrayList;
23 import java.util.Arrays;
24 import java.util.List;
25
26 import junit.framework.TestCase;
27
28
29
30
31
32
33 public class SelectorUtilsTest
34 extends TestCase
35 {
36
37 private List<Integer> list( int[] numbers )
38 {
39 List<Integer> result = new ArrayList<Integer>();
40
41 for ( int i = 0; i < numbers.length; i++ )
42 {
43 result.add( new Integer( numbers[i] ) );
44 }
45
46 return result;
47 }
48
49 public void testParseList()
50 {
51 List<String> includes = new ArrayList<String>();
52 List<String> excludes = new ArrayList<String>();
53
54 SelectorUtils.parseList( null, includes, excludes );
55
56 SelectorUtils.parseList( " 1.5, !1.4, 1.6+ ", includes, excludes );
57 assertEquals( Arrays.asList( new String[] { "1.5", "1.6+" } ), includes );
58 assertEquals( Arrays.asList( new String[] { "1.4" } ), excludes );
59 }
60
61 public void testParseVersion()
62 {
63 assertEquals( list( new int[] { 1, 6, 0, 12 } ), SelectorUtils.parseVersion( "1.6.0_12" ) );
64
65 assertEquals( list( new int[] { 1, 6, 0, 12 } ), SelectorUtils.parseVersion( "1.6.0_12+" ) );
66 assertEquals( list( new int[] { 1, 6, 0, 12 } ), SelectorUtils.parseVersion( "1.6.0_12-" ) );
67 }
68
69 public void testCompareVersions()
70 {
71 assertTrue( SelectorUtils.compareVersions( list( new int[] { 1, 6 } ), list( new int[] { 1, 6 } ) ) == 0 );
72
73 assertTrue( SelectorUtils.compareVersions( list( new int[] { 1, 5 } ), list( new int[] { 1, 6 } ) ) < 0 );
74 assertTrue( SelectorUtils.compareVersions( list( new int[] { 1, 6 } ), list( new int[] { 1, 5 } ) ) > 0 );
75
76 assertTrue( SelectorUtils.compareVersions( list( new int[] { 1 } ), list( new int[] { 1, 6 } ) ) < 0 );
77 assertTrue( SelectorUtils.compareVersions( list( new int[] { 1, 6 } ), list( new int[] { 1 } ) ) > 0 );
78 }
79
80 public void testIsMatchingJre()
81 {
82 assertFalse( SelectorUtils.isJreVersion( list( new int[] { 1, 4, 2, 8 } ), "1.5" ) );
83 assertTrue( SelectorUtils.isJreVersion( list( new int[] { 1, 5 } ), "1.5" ) );
84 assertTrue( SelectorUtils.isJreVersion( list( new int[] { 1, 5, 9 } ), "1.5" ) );
85 assertFalse( SelectorUtils.isJreVersion( list( new int[] { 1, 6 } ), "1.5" ) );
86
87 assertFalse( SelectorUtils.isJreVersion( list( new int[] { 1, 4, 2, 8 } ), "1.5+" ) );
88 assertTrue( SelectorUtils.isJreVersion( list( new int[] { 1, 5 } ), "1.5+" ) );
89 assertTrue( SelectorUtils.isJreVersion( list( new int[] { 1, 5, 9 } ), "1.5+" ) );
90 assertTrue( SelectorUtils.isJreVersion( list( new int[] { 1, 6 } ), "1.5+" ) );
91
92 assertTrue( SelectorUtils.isJreVersion( list( new int[] { 1, 4, 2, 8 } ), "1.5-" ) );
93 assertFalse( SelectorUtils.isJreVersion( list( new int[] { 1, 5 } ), "1.5-" ) );
94 assertFalse( SelectorUtils.isJreVersion( list( new int[] { 1, 5, 9 } ), "1.5-" ) );
95 assertFalse( SelectorUtils.isJreVersion( list( new int[] { 1, 6 } ), "1.5-" ) );
96 }
97
98 }