1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.lifecycle.internal;
20
21 import java.util.List;
22
23 import org.apache.maven.execution.MavenSession;
24 import org.apache.maven.lifecycle.internal.stub.LifecycleTaskSegmentCalculatorStub;
25 import org.apache.maven.lifecycle.internal.stub.ProjectDependencyGraphStub;
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.assertSame;
31
32 class BuildListCalculatorTest {
33
34 @Test
35 void testCalculateProjectBuilds() throws Exception {
36 LifecycleTaskSegmentCalculator lifecycleTaskSegmentCalculator = getTaskSegmentCalculator();
37 BuildListCalculator buildListCalculator = new BuildListCalculator();
38 final MavenSession session = ProjectDependencyGraphStub.getMavenSession();
39 List<TaskSegment> taskSegments = lifecycleTaskSegmentCalculator.calculateTaskSegments(session);
40 final ProjectBuildList buildList = buildListCalculator.calculateProjectBuilds(session, taskSegments);
41 final ProjectBuildList segments = buildList.getByTaskSegment(taskSegments.get(0));
42 assertEquals(3, taskSegments.size(), "Stub data contains 3 segments");
43 assertEquals(6, segments.size(), "Stub data contains 6 items");
44 final ProjectSegment build = segments.get(0);
45 assertNotNull(build);
46
47 for (ProjectSegment segment : segments) {
48 assertSame(session, segment.getSession());
49 }
50 }
51
52 private static LifecycleTaskSegmentCalculator getTaskSegmentCalculator() {
53 return new LifecycleTaskSegmentCalculatorStub();
54 }
55 }