1 package org.apache.maven.model.building;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.io.File;
23 import java.util.Properties;
24
25 import org.junit.jupiter.api.Test;
26
27 import static org.junit.jupiter.api.Assertions.assertEquals;
28 import static org.junit.jupiter.api.Assertions.assertNotNull;
29 import static org.junit.jupiter.api.Assertions.assertNull;
30
31
32
33
34 public class ComplexActivationTest
35 {
36
37 private File getPom( String name )
38 {
39 return new File( "src/test/resources/poms/factory/" + name + ".xml" ).getAbsoluteFile();
40 }
41
42 @Test
43 public void testAndConditionInActivation()
44 throws Exception
45 {
46 Properties sysProperties = new Properties();
47 sysProperties.setProperty( "myproperty", "test" );
48
49 ModelBuilder builder = new DefaultModelBuilderFactory().newInstance();
50 assertNotNull( builder );
51
52 DefaultModelBuildingRequest request = new DefaultModelBuildingRequest();
53 request.setProcessPlugins( true );
54 request.setPomFile( getPom( "complex" ) );
55 request.setSystemProperties( sysProperties );
56
57 ModelBuildingResult result = builder.build( request );
58 assertNotNull( result );
59 assertNotNull( result.getEffectiveModel() );
60 assertEquals( "activated-1", result.getEffectiveModel().getProperties().get( "profile.file" ) );
61 assertNull( result.getEffectiveModel().getProperties().get( "profile.miss" ) );
62 }
63
64 }