1 package org.apache.maven.model.profile.activation;
2
3 import java.util.Objects;
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 import java.util.Properties;
25
26 import org.apache.maven.model.Profile;
27 import org.apache.maven.model.building.SimpleProblemCollector;
28 import org.apache.maven.model.profile.DefaultProfileActivationContext;
29 import org.apache.maven.model.profile.ProfileActivationContext;
30
31 import junit.framework.TestCase;
32
33
34
35
36
37
38 public abstract class AbstractProfileActivatorTest<T extends ProfileActivator>
39 extends TestCase
40 {
41
42 private Class<T> activatorClass;
43
44 protected T activator;
45
46 public AbstractProfileActivatorTest( Class<T> activatorClass )
47 {
48 this.activatorClass = Objects.requireNonNull( activatorClass, "activatorClass cannot be null" );;
49 }
50
51 @Override
52 protected void setUp()
53 throws Exception
54 {
55 super.setUp();
56
57 activator = activatorClass.getConstructor().newInstance();
58 }
59
60 @Override
61 protected void tearDown()
62 throws Exception
63 {
64 activator = null;
65
66 super.tearDown();
67 }
68
69 protected ProfileActivationContext newContext( final Properties userProperties, final Properties systemProperties )
70 {
71 DefaultProfileActivationContext context = new DefaultProfileActivationContext();
72 return context.setUserProperties( userProperties ).setSystemProperties( systemProperties );
73 }
74
75 protected void assertActivation( boolean active, Profile profile, ProfileActivationContext context )
76 {
77 SimpleProblemCollector problems = new SimpleProblemCollector();
78
79 assertEquals( active, activator.isActive( profile, context, problems ) );
80
81 assertEquals( problems.getErrors().toString(), 0, problems.getErrors().size() );
82 assertEquals( problems.getWarnings().toString(), 0, problems.getWarnings().size() );
83 }
84
85 }