1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.lifecycle;
20
21 import java.util.Set;
22
23 import org.apache.maven.lifecycle.internal.ExecutionPlanItem;
24 import org.apache.maven.lifecycle.internal.stub.LifecycleExecutionPlanCalculatorStub;
25 import org.apache.maven.model.Plugin;
26 import org.junit.jupiter.api.Test;
27
28 import static org.junit.jupiter.api.Assertions.assertEquals;
29 import static org.junit.jupiter.api.Assertions.assertNotNull;
30 import static org.junit.jupiter.api.Assertions.assertNull;
31
32
33
34 class MavenExecutionPlanTest {
35
36 @Test
37 void testFindLastInPhase() throws Exception {
38 MavenExecutionPlan plan = LifecycleExecutionPlanCalculatorStub.getProjectAExecutionPlan();
39
40 ExecutionPlanItem expected = plan.findLastInPhase("package");
41 ExecutionPlanItem beerPhase = plan.findLastInPhase("BEER");
42 assertEquals(expected, beerPhase);
43 assertNotNull(expected);
44 }
45
46 @Test
47 void testThreadSafeMojos() throws Exception {
48 MavenExecutionPlan plan = LifecycleExecutionPlanCalculatorStub.getProjectAExecutionPlan();
49 final Set<Plugin> unSafePlugins = plan.getNonThreadSafePlugins();
50
51 assertEquals(plan.size() - 1, unSafePlugins.size());
52 }
53
54 @Test
55 void testFindLastWhenFirst() throws Exception {
56 MavenExecutionPlan plan = LifecycleExecutionPlanCalculatorStub.getProjectAExecutionPlan();
57
58 ExecutionPlanItem beerPhase = plan.findLastInPhase(
59 LifecycleExecutionPlanCalculatorStub.VALIDATE.getPhase());
60 assertNull(beerPhase);
61 }
62
63 @Test
64 void testFindLastInPhaseMisc() throws Exception {
65 MavenExecutionPlan plan = LifecycleExecutionPlanCalculatorStub.getProjectAExecutionPlan();
66
67 assertNull(plan.findLastInPhase("pacXkage"));
68
69 assertNotNull(plan.findLastInPhase(LifecycleExecutionPlanCalculatorStub.INITIALIZE.getPhase()));
70 }
71 }