Skip to content

Commit fc5956b

Browse files
authored
[Archetype] Replace JUnit Jupiter with AssertJ (#2969)
As a JUnit Platform Engine, Cucumber does not need JUnit Jupiter. It was included as a dependency to allow users to use Assertions. This is better done with AssertJ.
1 parent daeb1e4 commit fc5956b

File tree

7 files changed

+33
-7
lines changed

7 files changed

+33
-7
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1515
- [JUnit Platform Engine] Set Engine-Version-cucumber attribute ([#2963](https://github.com/cucumber/cucumber-jvm/pull/2963) M.P. Korstanje)
1616

1717
### Changed
18+
- [Archetype] Replace JUnit Jupiter with AssertJ ([#2969](https://github.com/cucumber/cucumber-jvm/pull/2969) M.P. Korstanje)
1819
- [JUnit Platform Engine] Use JUnit Platform 1.11.3 (JUnit Jupiter 5.11.3)
1920

2021
### Added

cucumber-archetype/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,5 @@ This is a Maven Archetype for setting up an empty Cucumber project. Used by the
66
mvn archetype:generate \
77
-DarchetypeGroupId=io.cucumber \
88
-DarchetypeArtifactId=cucumber-archetype \
9-
-DarchetypeVersion=${cucumber.version} \
9+
-DarchetypeVersion=${cucumber.version}
1010
```

cucumber-archetype/pom.xml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616

1717
<properties>
1818
<junit-jupiter.version>5.11.4</junit-jupiter.version>
19+
<assertj.version>3.25.3</assertj.version>
1920
<maven-compiler-plugin.version>3.13.0</maven-compiler-plugin.version>
2021
<maven-surefire-plugin.version>3.5.2</maven-surefire-plugin.version>
2122
</properties>
@@ -39,6 +40,16 @@
3940
<type>pom</type>
4041
<scope>import</scope>
4142
</dependency>
43+
<!-- Not used by this module. But ensures the assertj.version
44+
in the archetype template is also automatically updated by renovate
45+
bot. -->
46+
<dependency>
47+
<groupId>org.assertj</groupId>
48+
<artifactId>assertj-bom</artifactId>
49+
<version>${assertj.version}</version>
50+
<type>pom</type>
51+
<scope>import</scope>
52+
</dependency>
4253
</dependencies>
4354
</dependencyManagement>
4455

cucumber-archetype/src/main/resources/archetype-resources/pom.xml

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,13 @@
2929
<type>pom</type>
3030
<scope>import</scope>
3131
</dependency>
32+
<dependency>
33+
<groupId>org.assertj</groupId>
34+
<artifactId>assertj-bom</artifactId>
35+
<version>${assertj.version}</version>
36+
<type>pom</type>
37+
<scope>import</scope>
38+
</dependency>
3239
</dependencies>
3340
</dependencyManagement>
3441

@@ -52,8 +59,8 @@
5259
</dependency>
5360

5461
<dependency>
55-
<groupId>org.junit.jupiter</groupId>
56-
<artifactId>junit-jupiter</artifactId>
62+
<groupId>org.assertj</groupId>
63+
<artifactId>assertj-core</artifactId>
5764
<scope>test</scope>
5865
</dependency>
5966
</dependencies>

cucumber-archetype/src/main/resources/archetype-resources/src/test/java/StepDefinitions.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import io.cucumber.java.en.*;
44

5-
import static org.junit.jupiter.api.Assertions.*;
5+
import static org.assertj.core.api.Assertions.assertThat;
66

77
public class StepDefinitions {
88

cucumber-archetype/src/test/resources/projects/should-generate-project/reference/pom.xml

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,13 @@
2929
<type>pom</type>
3030
<scope>import</scope>
3131
</dependency>
32+
<dependency>
33+
<groupId>org.assertj</groupId>
34+
<artifactId>assertj-bom</artifactId>
35+
<version>${assertj.version}</version>
36+
<type>pom</type>
37+
<scope>import</scope>
38+
</dependency>
3239
</dependencies>
3340
</dependencyManagement>
3441

@@ -52,8 +59,8 @@
5259
</dependency>
5360

5461
<dependency>
55-
<groupId>org.junit.jupiter</groupId>
56-
<artifactId>junit-jupiter</artifactId>
62+
<groupId>org.assertj</groupId>
63+
<artifactId>assertj-core</artifactId>
5764
<scope>test</scope>
5865
</dependency>
5966
</dependencies>

cucumber-archetype/src/test/resources/projects/should-generate-project/reference/src/test/java/com/example/StepDefinitions.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import io.cucumber.java.en.*;
44

5-
import static org.junit.jupiter.api.Assertions.*;
5+
import static org.assertj.core.api.Assertions.assertThat;
66

77
public class StepDefinitions {
88

0 commit comments

Comments
 (0)