1 package org.apache.maven.plugins.invoker;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import static org.junit.Assert.assertEquals;
23 import java.util.Properties;
24
25 import org.apache.maven.plugins.invoker.InvokerProperties;
26 import org.apache.maven.plugins.invoker.Selector;
27 import org.junit.Test;
28
29 public class SelectorTest
30 {
31 @Test
32 public void testGlobalMatch()
33 {
34 Selector selector = new Selector( "3.2.5", "1.7", null );
35
36 Properties props = new Properties();
37 props.setProperty( "invoker.maven.version", "3.0+" );
38 InvokerProperties invokerProperties = new InvokerProperties( props );
39 assertEquals( 0, selector.getSelection( invokerProperties ) );
40 }
41
42 @Test
43 public void testSelectorMatch()
44 {
45 Selector selector = new Selector( "3.2.5", "1.7", null );
46
47 Properties props = new Properties();
48 props.setProperty( "selector.1.maven.version", "3.0+" );
49 InvokerProperties invokerProperties = new InvokerProperties( props );
50 assertEquals( 0, selector.getSelection( invokerProperties ) );
51
52 props.setProperty( "selector.1.maven.version", "3.3.1+" );
53 assertEquals( Selector.SELECTOR_MULTI, selector.getSelection( invokerProperties ) );
54 }
55
56 @Test
57 public void testSelectorWithGlobalMatch()
58 {
59 Selector selector = new Selector( "3.2.5", "1.7", null );
60
61 Properties props = new Properties();
62
63 props.setProperty( "invoker.maven.version", "3.0+" );
64 props.setProperty( "selector.1.java.version", "1.4+" );
65 props.setProperty( "selector.2.os.family", "myos" );
66 InvokerProperties invokerProperties = new InvokerProperties( props );
67 assertEquals( 0, selector.getSelection( invokerProperties ) );
68
69 props.setProperty( "invoker.maven.version", "3.3.1+" );
70 assertEquals( Selector.SELECTOR_MULTI, selector.getSelection( invokerProperties ) );
71
72 props.setProperty( "invoker.maven.version", "3.0+" );
73 props.setProperty( "selector.1.maven.version", "3.3.1+" );
74 assertEquals( Selector.SELECTOR_MULTI, selector.getSelection( invokerProperties ) );
75
76 props.setProperty( "selector.2.os.family", "!myos" );
77 assertEquals( 0, selector.getSelection( invokerProperties ) );
78 }
79
80 }