Skip to content

Commit 6b2befe

Browse files
Update lasagna to use test runner v3 features (exercism#2354)
1 parent a952106 commit 6b2befe

2 files changed

Lines changed: 37 additions & 16 deletions

File tree

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,23 @@
1-
apply plugin: "java"
2-
apply plugin: "eclipse"
3-
apply plugin: "idea"
4-
5-
// set default encoding to UTF-8
6-
compileJava.options.encoding = "UTF-8"
7-
compileTestJava.options.encoding = "UTF-8"
1+
plugins {
2+
id "java"
3+
}
84

95
repositories {
10-
mavenCentral()
6+
mavenCentral()
117
}
128

139
dependencies {
14-
testImplementation "junit:junit:4.13"
15-
testImplementation "org.assertj:assertj-core:3.15.0"
10+
testImplementation platform("org.junit:junit-bom:5.10.0")
11+
testImplementation "org.junit.jupiter:junit-jupiter"
12+
testImplementation "org.assertj:assertj-core:3.15.0"
1613
}
1714

1815
test {
19-
testLogging {
20-
exceptionFormat = 'full'
21-
showStandardStreams = true
22-
events = ["passed", "failed", "skipped"]
23-
}
16+
useJUnitPlatform()
17+
18+
testLogging {
19+
exceptionFormat = "full"
20+
showStandardStreams = true
21+
events = ["passed", "failed", "skipped"]
22+
}
2423
}

exercises/concept/lasagna/src/test/java/LasagnaTest.java

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
import org.junit.Test;
1+
import org.junit.jupiter.api.DisplayName;
2+
import org.junit.jupiter.api.Tag;
3+
import org.junit.jupiter.api.Test;
24

35
import utils.Lasagna;
46

@@ -7,6 +9,8 @@
79
public class LasagnaTest {
810

911
@Test
12+
@Tag("task:1")
13+
@DisplayName("Implemented the expectedMinutesInOven method")
1014
public void implemented_expected_minutes_in_oven() {
1115
assertThat(new Lasagna().hasMethod("expectedMinutesInOven"))
1216
.withFailMessage("Method expectedMinutesInOven must be created")
@@ -20,11 +24,15 @@ public void implemented_expected_minutes_in_oven() {
2024
}
2125

2226
@Test
27+
@Tag("task:1")
28+
@DisplayName("The expectedMinutesInOven method returns the correct value")
2329
public void expected_minutes_in_oven() {
2430
assertThat(new Lasagna().expectedMinutesInOven()).isEqualTo(40);
2531
}
2632

2733
@Test
34+
@Tag("task:2")
35+
@DisplayName("Implemented the remainingMinutesInOven method")
2836
public void implemented_remaining_minutes_in_oven() {
2937
assertThat(new Lasagna().hasMethod("remainingMinutesInOven", int.class))
3038
.withFailMessage("Method remainingMinutesInOven must be created")
@@ -38,11 +46,15 @@ public void implemented_remaining_minutes_in_oven() {
3846
}
3947

4048
@Test
49+
@Tag("task:2")
50+
@DisplayName("The remainingMinutesInOven method calculates and returns the correct value")
4151
public void remaining_minutes_in_oven() {
4252
assertThat(new Lasagna().remainingMinutesInOven(25)).isEqualTo(15);
4353
}
4454

4555
@Test
56+
@Tag("task:3")
57+
@DisplayName("Implemented the preparationTimeInMinutes method")
4658
public void implemented_preparation_time_in_minutes() {
4759
assertThat(new Lasagna().hasMethod("preparationTimeInMinutes", int.class))
4860
.withFailMessage("Method preparationTimeInMinutes must be created")
@@ -56,16 +68,22 @@ public void implemented_preparation_time_in_minutes() {
5668
}
5769

5870
@Test
71+
@Tag("task:3")
72+
@DisplayName("The preparationTimeInMinutes method calculates the correct value for single layer")
5973
public void preparation_time_in_minutes_for_one_layer() {
6074
assertThat(new Lasagna().preparationTimeInMinutes(1)).isEqualTo(2);
6175
}
6276

6377
@Test
78+
@Tag("task:3")
79+
@DisplayName("The preparationTimeInMinutes method calculates the correct value for multiple layers")
6480
public void preparation_time_in_minutes_for_multiple_layers() {
6581
assertThat(new Lasagna().preparationTimeInMinutes(4)).isEqualTo(8);
6682
}
6783

6884
@Test
85+
@Tag("task:4")
86+
@DisplayName("Implemented the totalTimeInMinutes method")
6987
public void implemented_total_time_in_minutes() {
7088
assertThat(new Lasagna().hasMethod("totalTimeInMinutes", int.class, int.class))
7189
.withFailMessage("Method totalTimeInMinutes must be created")
@@ -79,11 +97,15 @@ public void implemented_total_time_in_minutes() {
7997
}
8098

8199
@Test
100+
@Tag("task:4")
101+
@DisplayName("The totalTimeInMinutes method calculates the correct value for single layer")
82102
public void total_time_in_minutes_for_one_layer() {
83103
assertThat(new Lasagna().totalTimeInMinutes(1, 30)).isEqualTo(32);
84104
}
85105

86106
@Test
107+
@Tag("task:4")
108+
@DisplayName("The totalTimeInMinutes method calculates the correct value for multiple layers")
87109
public void total_time_in_minutes_for_multiple_layers() {
88110
assertThat(new Lasagna().totalTimeInMinutes(4, 8)).isEqualTo(16);
89111
}

0 commit comments

Comments
 (0)