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