1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.buildcache.its;
20
21 import java.util.Arrays;
22 import java.util.List;
23
24 import org.apache.maven.buildcache.its.junit.IntegrationTest;
25 import org.apache.maven.it.VerificationException;
26 import org.apache.maven.it.Verifier;
27 import org.junit.jupiter.api.Assertions;
28 import org.junit.jupiter.api.Test;
29
30 import static org.apache.maven.buildcache.util.LogFileUtils.findFirstLineContainingTextsInLogs;
31
32 @IntegrationTest("src/test/projects/build-extension")
33 class SkipBuildExtensionTest {
34
35 @Test
36 void simple(Verifier verifier) throws VerificationException {
37 verifier.setAutoclean(false);
38
39 verifier.setLogFileName("../log-1.txt");
40 verifier.executeGoal("clean");
41 verifier.verifyErrorFreeLog();
42
43 verifier.verifyTextInLog("Build cache is disabled for 'clean' goal.");
44 }
45
46 @Test
47 void multipleGoals(Verifier verifier) throws VerificationException {
48 verifier.setAutoclean(false);
49
50 verifier.setLogFileName("../log-2.txt");
51 String[] goals = {"clean", "install"};
52 List<String> goalsList = Arrays.asList(goals);
53 verifier.executeGoals(goalsList);
54 verifier.verifyErrorFreeLog();
55
56 verifyNoTextInLog(verifier, "Build cache is disabled for 'clean' goal.");
57 }
58
59
60
61
62
63
64
65
66
67
68
69 @Test
70 void cacheDisabledViaCommandLine(Verifier verifier) throws VerificationException {
71 verifier.setAutoclean(false);
72 verifier.addCliOption("-Dmaven.build.cache.enabled=false");
73
74 verifier.setLogFileName("../log-cache-disabled.txt");
75 verifier.executeGoals(Arrays.asList("clean", "install"));
76 verifier.verifyErrorFreeLog();
77
78
79 verifier.verifyTextInLog("Cache disabled by command line flag");
80 }
81
82 private static void verifyNoTextInLog(Verifier verifier, String text) throws VerificationException {
83 Assertions.assertNull(findFirstLineContainingTextsInLogs(verifier, text));
84 }
85 }