File tree Expand file tree Collapse file tree 11 files changed +36
-8
lines changed
interpreter/src/test/java/com/iluwatar/interpreter
observer/src/test/java/com/iluwatar/observer Expand file tree Collapse file tree 11 files changed +36
-8
lines changed Original file line number Diff line number Diff line change 23
23
package com .iluwatar .interpreter ;
24
24
25
25
import org .junit .jupiter .api .Disabled ;
26
+ import org .junit .jupiter .api .TestInstance ;
26
27
import org .junit .jupiter .params .ParameterizedTest ;
27
28
import org .junit .jupiter .params .provider .Arguments ;
28
29
import org .junit .jupiter .params .provider .MethodSource ;
43
44
* @param <E> Type of Expression
44
45
* @author Jeroen Meulemeester
45
46
*/
47
+ @ TestInstance (TestInstance .Lifecycle .PER_CLASS )
46
48
public abstract class ExpressionTest <E extends Expression > {
47
49
48
50
/**
@@ -88,6 +90,13 @@ static Stream<Arguments> prepareParameters(final IntBinaryOperator resultCalc) {
88
90
this .factory = factory ;
89
91
}
90
92
93
+ /**
94
+ * Create a new set of test entries with the expected result
95
+ *
96
+ * @return The list of parameters used during this test
97
+ */
98
+ public abstract Stream <Arguments > expressionProvider ();
99
+
91
100
/**
92
101
* Verify if the expression calculates the correct result when calling {@link E#interpret()}
93
102
*/
Original file line number Diff line number Diff line change @@ -38,7 +38,8 @@ public class MinusExpressionTest extends ExpressionTest<MinusExpression> {
38
38
*
39
39
* @return The list of parameters used during this test
40
40
*/
41
- public static Stream <Arguments > expressionProvider () {
41
+ @ Override
42
+ public Stream <Arguments > expressionProvider () {
42
43
return prepareParameters ((f , s ) -> f - s );
43
44
}
44
45
Original file line number Diff line number Diff line change @@ -38,7 +38,8 @@ public class MultiplyExpressionTest extends ExpressionTest<MultiplyExpression> {
38
38
*
39
39
* @return The list of parameters used during this test
40
40
*/
41
- public static Stream <Arguments > expressionProvider () {
41
+ @ Override
42
+ public Stream <Arguments > expressionProvider () {
42
43
return prepareParameters ((f , s ) -> f * s );
43
44
}
44
45
Original file line number Diff line number Diff line change @@ -42,7 +42,8 @@ public class NumberExpressionTest extends ExpressionTest<NumberExpression> {
42
42
*
43
43
* @return The list of parameters used during this test
44
44
*/
45
- public static Stream <Arguments > expressionProvider () {
45
+ @ Override
46
+ public Stream <Arguments > expressionProvider () {
46
47
return prepareParameters ((f , s ) -> f );
47
48
}
48
49
Original file line number Diff line number Diff line change @@ -38,7 +38,8 @@ public class PlusExpressionTest extends ExpressionTest<PlusExpression> {
38
38
*
39
39
* @return The list of parameters used during this test
40
40
*/
41
- public static Stream <Arguments > expressionProvider () {
41
+ @ Override
42
+ public Stream <Arguments > expressionProvider () {
42
43
return prepareParameters ((f , s ) -> f + s );
43
44
}
44
45
Original file line number Diff line number Diff line change 33
33
*/
34
34
public class HobbitsTest extends WeatherObserverTest <Hobbits > {
35
35
36
- static Collection <Object []> dataProvider () {
36
+ @ Override
37
+ public Collection <Object []> dataProvider () {
37
38
final List <Object []> testData = new ArrayList <>();
38
39
testData .add (new Object []{WeatherType .SUNNY , "The happy hobbits bade in the warm sun." });
39
40
testData .add (new Object []{WeatherType .RAINY , "The hobbits look for cover from the rain." });
Original file line number Diff line number Diff line change 33
33
*/
34
34
public class OrcsTest extends WeatherObserverTest <Orcs > {
35
35
36
- static Collection <Object []> dataProvider () {
36
+ @ Override
37
+ public Collection <Object []> dataProvider () {
37
38
final List <Object []> testData = new ArrayList <>();
38
39
testData .add (new Object []{WeatherType .SUNNY , "The sun hurts the orcs' eyes." });
39
40
testData .add (new Object []{WeatherType .RAINY , "The orcs are dripping wet." });
Original file line number Diff line number Diff line change 23
23
package com .iluwatar .observer ;
24
24
25
25
import com .iluwatar .observer .utils .InMemoryAppender ;
26
+
27
+ import java .util .Collection ;
26
28
import java .util .function .Supplier ;
27
29
28
30
import org .junit .jupiter .api .AfterEach ;
29
31
import org .junit .jupiter .api .BeforeEach ;
30
32
import org .junit .jupiter .api .Disabled ;
33
+ import org .junit .jupiter .api .TestInstance ;
31
34
import org .junit .jupiter .params .ParameterizedTest ;
32
35
import org .junit .jupiter .params .provider .MethodSource ;
33
36
39
42
* @param <O> Type of WeatherObserver
40
43
* @author Jeroen Meulemeester
41
44
*/
45
+ @ TestInstance (TestInstance .Lifecycle .PER_CLASS )
42
46
public abstract class WeatherObserverTest <O extends WeatherObserver > {
43
47
44
48
private InMemoryAppender appender ;
@@ -67,6 +71,8 @@ public void tearDown() {
67
71
this .factory = factory ;
68
72
}
69
73
74
+ public abstract Collection <Object []> dataProvider ();
75
+
70
76
/**
71
77
* Verify if the weather has the expected influence on the observer
72
78
*/
Original file line number Diff line number Diff line change 35
35
*/
36
36
public class GHobbitsTest extends ObserverTest <GHobbits > {
37
37
38
- static Collection <Object []> dataProvider () {
38
+ @ Override
39
+ public Collection <Object []> dataProvider () {
39
40
final List <Object []> testData = new ArrayList <>();
40
41
testData .add (new Object []{WeatherType .SUNNY , "The happy hobbits bade in the warm sun." });
41
42
testData .add (new Object []{WeatherType .RAINY , "The hobbits look for cover from the rain." });
Original file line number Diff line number Diff line change 26
26
import com .iluwatar .observer .utils .InMemoryAppender ;
27
27
import org .junit .jupiter .api .AfterEach ;
28
28
import org .junit .jupiter .api .BeforeEach ;
29
+ import org .junit .jupiter .api .TestInstance ;
29
30
import org .junit .jupiter .params .ParameterizedTest ;
30
31
import org .junit .jupiter .params .provider .MethodSource ;
31
32
33
+ import java .util .Collection ;
32
34
import java .util .function .Supplier ;
33
35
34
36
import static org .junit .jupiter .api .Assertions .assertEquals ;
39
41
* @param <O> Type of Observer
40
42
* @author Jeroen Meulemeester
41
43
*/
44
+ @ TestInstance (TestInstance .Lifecycle .PER_CLASS )
42
45
public abstract class ObserverTest <O extends Observer > {
43
46
44
47
private InMemoryAppender appender ;
@@ -67,6 +70,8 @@ public void tearDown() {
67
70
this .factory = factory ;
68
71
}
69
72
73
+ public abstract Collection <Object []> dataProvider ();
74
+
70
75
/**
71
76
* Verify if the weather has the expected influence on the observer
72
77
*/
Original file line number Diff line number Diff line change 35
35
*/
36
36
public class OrcsTest extends ObserverTest <GOrcs > {
37
37
38
- static Collection <Object []> dataProvider () {
38
+ @ Override
39
+ public Collection <Object []> dataProvider () {
39
40
final List <Object []> testData = new ArrayList <>();
40
41
testData .add (new Object []{WeatherType .SUNNY , "The sun hurts the orcs' eyes." });
41
42
testData .add (new Object []{WeatherType .RAINY , "The orcs are dripping wet." });
You can’t perform that action at this time.
0 commit comments