Skip to content

Commit 90dcee4

Browse files
author
Sebastien Latre
committed
Add unit tests for Scm Tag ruleset.
1 parent 22661b4 commit 90dcee4

10 files changed

Lines changed: 181 additions & 0 deletions

File tree

src/main/resources/logback.xml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
<configuration>
2+
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
3+
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
4+
<level>TRACE</level>
5+
</filter>
6+
<encoder>
7+
<pattern>%green(%d{HH:mm:ss.SSS}) [%30.30thread] [%mdc{request.id:-noRequestId}] %highlight(%-5level) %cyan(%40.40logger:%-4.4line) - %msg%n</pattern>
8+
</encoder>
9+
</appender>
10+
<appender name="FILE"
11+
class="ch.qos.logback.core.rolling.RollingFileAppender">
12+
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
13+
<level>TRACE</level>
14+
</filter>
15+
<file>/busdata/batch/tid_mod_cus/log/tid_mod_cus.log</file>
16+
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
17+
<fileNamePattern>/busdata/batch/tid_mod_cus/log/tid_mod_cus.log.%d{yyyy-MM-dd}.%i</fileNamePattern>
18+
<maxFileSize>32MB</maxFileSize>
19+
<maxHistory>90</maxHistory>
20+
<totalSizeCap>1GB</totalSizeCap>
21+
</rollingPolicy>
22+
<encoder>
23+
<pattern>%d{ISO8601} %-5level [%10.10thread] [%mdc{request.id:-noRequestId}] %-50.50logger:%-4.4line - %msg%n</pattern>
24+
</encoder>
25+
</appender>
26+
<root level="TRACE">
27+
<appender-ref ref="FILE"/>
28+
<appender-ref ref="STDOUT"/>
29+
</root>
30+
<logger name="com.zaxxer" level="INFO"/>
31+
<logger name="io" level="INFO"/>
32+
<logger name="org" level="WARN"/>
33+
</configuration>

src/test/java/de/oppermann/pomutils/RulesetTest.java

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,4 +173,52 @@ public void testPropertyRuleWithTheirStrategy() throws Exception {
173173
.getProperty("regex.version"));
174174
}
175175

176+
public void testScmTagWithOurStrategy() throws Exception {
177+
String myTestSubFolder = "rulesets/rulesetScmTag/ourStrategy";
178+
179+
TestUtils.prepareTestFolder(myTestSubFolder);
180+
181+
File rulesetFile = new File(TestUtils.resourceBaseTestFolder + "/" + myTestSubFolder + "/ruleset.yaml");
182+
String basePomFile = TestUtils.resourceBaseTestFolder + "/" + myTestSubFolder + "/base.pom.xml";
183+
String ourPomFile = TestUtils.resourceBaseTestFolder + "/" + myTestSubFolder + "/our.pom.xml";
184+
String theirPomFile = TestUtils.resourceBaseTestFolder + "/" + myTestSubFolder + "/their.pom.xml";
185+
186+
String scmTagBeforeMerge = new POM(ourPomFile).getScmTag();
187+
Ruleset ruleset = new Ruleset(rulesetFile);
188+
189+
int mergeReturnValue = doMerge(ruleset, basePomFile, ourPomFile, theirPomFile);
190+
191+
assertTrue("merge succeeded", mergeReturnValue == 0);
192+
193+
POM theirPom = new POM(theirPomFile);
194+
POM ourPom = new POM(ourPomFile);
195+
196+
assertEquals("same version now", ourPom.getScmTag(), theirPom.getScmTag());
197+
assertEquals("our version should win", scmTagBeforeMerge, ourPom.getScmTag());
198+
}
199+
200+
public void testScmTagWithTheirsStrategy() throws Exception {
201+
String myTestSubFolder = "rulesets/rulesetScmTag/theirStrategy";
202+
203+
TestUtils.prepareTestFolder(myTestSubFolder);
204+
205+
File rulesetFile = new File(TestUtils.resourceBaseTestFolder + "/" + myTestSubFolder + "/ruleset.yaml");
206+
String basePomFile = TestUtils.resourceBaseTestFolder + "/" + myTestSubFolder + "/base.pom.xml";
207+
String ourPomFile = TestUtils.resourceBaseTestFolder + "/" + myTestSubFolder + "/our.pom.xml";
208+
String theirPomFile = TestUtils.resourceBaseTestFolder + "/" + myTestSubFolder + "/their.pom.xml";
209+
210+
String scmTagBeforeMerge = new POM(theirPomFile).getScmTag();
211+
Ruleset ruleset = new Ruleset(rulesetFile);
212+
213+
int mergeReturnValue = doMerge(ruleset, basePomFile, ourPomFile, theirPomFile);
214+
215+
assertTrue("merge succeeded", mergeReturnValue == 0);
216+
217+
POM theirPom = new POM(theirPomFile);
218+
POM ourPom = new POM(ourPomFile);
219+
220+
assertEquals("same version now", ourPom.getScmTag(), theirPom.getScmTag());
221+
assertEquals("their version should win", scmTagBeforeMerge, ourPom.getScmTag());
222+
}
223+
176224
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
2+
<modelVersion>4.0.0</modelVersion>
3+
<groupId>de.oppermann.pomutils</groupId>
4+
<artifactId>pomutils</artifactId>
5+
<dependencies>
6+
<dependency>
7+
<groupId>org.codehaus.mojo</groupId>
8+
<artifactId>versions-maven-plugin</artifactId>
9+
<version>2.1</version>
10+
<type>maven-plugin</type>
11+
</dependency>
12+
</dependencies>
13+
<scm>
14+
<tag>base</tag>
15+
</scm>
16+
</project>
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
2+
<modelVersion>4.0.0</modelVersion>
3+
<groupId>de.oppermann.pomutils</groupId>
4+
<artifactId>pomutils</artifactId>
5+
<dependencies>
6+
<dependency>
7+
<groupId>org.codehaus.mojo</groupId>
8+
<artifactId>versions-maven-plugin</artifactId>
9+
<version>2.1</version>
10+
<type>maven-plugin</type>
11+
</dependency>
12+
</dependencies>
13+
<scm>
14+
<tag>base</tag>
15+
</scm>
16+
</project>
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
--- !!de.oppermann.pomutils.rules.ScmTagRule
2+
strategy: OUR
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
2+
<modelVersion>4.0.0</modelVersion>
3+
<groupId>de.oppermann.pomutils</groupId>
4+
<artifactId>pomutils</artifactId>
5+
<dependencies>
6+
<dependency>
7+
<groupId>org.codehaus.mojo</groupId>
8+
<artifactId>versions-maven-plugin</artifactId>
9+
<version>2.5</version>
10+
<type>maven-plugin</type>
11+
</dependency>
12+
</dependencies>
13+
<scm>
14+
<tag>base</tag>
15+
</scm>
16+
</project>
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
2+
<modelVersion>4.0.0</modelVersion>
3+
<groupId>de.oppermann.pomutils</groupId>
4+
<artifactId>pomutils</artifactId>
5+
<dependencies>
6+
<dependency>
7+
<groupId>org.codehaus.mojo</groupId>
8+
<artifactId>versions-maven-plugin</artifactId>
9+
<version>2.1</version>
10+
<type>maven-plugin</type>
11+
</dependency>
12+
</dependencies>
13+
<scm>
14+
<tag>base</tag>
15+
</scm>
16+
</project>
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
2+
<modelVersion>4.0.0</modelVersion>
3+
<groupId>de.oppermann.pomutils</groupId>
4+
<artifactId>pomutils</artifactId>
5+
<dependencies>
6+
<dependency>
7+
<groupId>org.codehaus.mojo</groupId>
8+
<artifactId>versions-maven-plugin</artifactId>
9+
<version>2.1</version>
10+
<type>maven-plugin</type>
11+
</dependency>
12+
</dependencies>
13+
<scm>
14+
<tag>base</tag>
15+
</scm>
16+
</project>
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
--- !!de.oppermann.pomutils.rules.ScmTagRule
2+
strategy: THEIR
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
2+
<modelVersion>4.0.0</modelVersion>
3+
<groupId>de.oppermann.pomutils</groupId>
4+
<artifactId>pomutils</artifactId>
5+
<dependencies>
6+
<dependency>
7+
<groupId>org.codehaus.mojo</groupId>
8+
<artifactId>versions-maven-plugin</artifactId>
9+
<version>2.5</version>
10+
<type>maven-plugin</type>
11+
</dependency>
12+
</dependencies>
13+
<scm>
14+
<tag>base</tag>
15+
</scm>
16+
</project>

0 commit comments

Comments
 (0)