BAEL-1861 - Running JUnit tests from a Java application (#4526)
* BAEL-1562 - Thymeleaf sample working * BAEL-1562 Code added for Fragments sample * BAEL-1562 - Last correction for the test * BAEL-1562 - Thymeleaf sample working * BAEL-1562 Code added for Fragments sample * BAEL-1562 - Last correction for the test * Updates Thymeleaf version to 3.0.9.RELEASE * Added msf4j projects * updated msf4j project folder * fixed issue with spring-thymeleaf/pom.xml * Removed depedency-reduced-pom.xml * Whitespacing fix * Strange git issue with README.MD, wouldn't revert the file * Added jupiter api * Corrected junit test * Added test engine to plugin * Removed extra tag * Little fixes to junit4 and junit4 run from java * Removed scope from pom.xml * Removed bin file from testing * Slight changes for PMD * Slight changes for PMD * ok, moved code to another folder * Renamed and fixed runjunitfromjava * moved test classes to test folder * moved main to src/java * BAEL-1861 Moved test running classes to src/test/java * Added changes to runjunitfromjava * Added changes to runjunitfromjava * BAEL-1861 Changed test execution code examples * BAEL-1861 Changed test execution code examples; formatting
This commit is contained in:
parent
a8288f98a7
commit
c765acd1da
|
@ -0,0 +1,54 @@
|
|||
<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">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<groupId>com.baeldung.junit</groupId>
|
||||
<artifactId>applicationtesting</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<name>applicationtesting</name>
|
||||
<url>http://maven.apache.org</url>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<java.version>1.8</java.version>
|
||||
<junit-jupiter.version>5.2.0</junit-jupiter.version>
|
||||
<junit-launcher.version>1.2.0</junit-launcher.version>
|
||||
<junit4.version>4.12</junit4.version>
|
||||
<maven-compiler-plugin.version>3.7.0</maven-compiler-plugin.version>
|
||||
</properties>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>${maven-compiler-plugin.version}</version>
|
||||
<configuration>
|
||||
<source>${java.version}</source>
|
||||
<target>${java.version}</target>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.junit.jupiter</groupId>
|
||||
<artifactId>junit-jupiter-engine</artifactId>
|
||||
<version>${junit-jupiter.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.junit.platform</groupId>
|
||||
<artifactId>junit-platform-launcher</artifactId>
|
||||
<version>${junit-launcher.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>${junit4.version}</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
</project>
|
|
@ -0,0 +1,41 @@
|
|||
package com.baeldung.junit.runfromjava.listnode;
|
||||
|
||||
public class ListNode {
|
||||
private int value;
|
||||
private ListNode next;
|
||||
|
||||
public ListNode(int v) {
|
||||
value = v;
|
||||
}
|
||||
|
||||
public ListNode(int v, ListNode next) {
|
||||
value = v;
|
||||
this.next = next;
|
||||
}
|
||||
|
||||
public int getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public ListNode getNext() {
|
||||
return next;
|
||||
}
|
||||
|
||||
public void setNext(ListNode next) {
|
||||
this.next = next;
|
||||
}
|
||||
|
||||
public String toString() {
|
||||
String result = "";
|
||||
ListNode tmp = this;
|
||||
|
||||
while (tmp.next != null) {
|
||||
result += tmp.value + "->";
|
||||
tmp = tmp.next;
|
||||
}
|
||||
|
||||
result += tmp.value;
|
||||
|
||||
return result.toString();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,22 @@
|
|||
package com.baeldung.junit.runfromjava.listnode;
|
||||
|
||||
public class MergeLists {
|
||||
|
||||
public ListNode merge(ListNode list1, ListNode list2) {
|
||||
|
||||
if (list1 == null) {
|
||||
return list2;
|
||||
}
|
||||
if (list2 == null) {
|
||||
return list1;
|
||||
}
|
||||
|
||||
if (list1.getValue() <= list2.getValue()) {
|
||||
list1.setNext(merge(list1.getNext(), list2));
|
||||
return list1;
|
||||
} else {
|
||||
list2.setNext(merge(list2.getNext(), list1));
|
||||
return list2;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
package com.baeldung.junit.runfromjava.listnode;
|
||||
|
||||
public class RemovedNthElement {
|
||||
public ListNode removeNthFromEnd(ListNode head, int n) {
|
||||
|
||||
ListNode start = new ListNode(0);
|
||||
start.setNext(head);
|
||||
|
||||
ListNode fast = start;
|
||||
ListNode slow = start;
|
||||
|
||||
for (int i = 0; i < n + 1 && fast != null; i++) {
|
||||
fast = fast.getNext();
|
||||
}
|
||||
|
||||
while (fast != null) {
|
||||
fast = fast.getNext();
|
||||
slow = slow.getNext();
|
||||
}
|
||||
|
||||
slow.setNext(slow.getNext()
|
||||
.getNext());
|
||||
|
||||
return start.getNext();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
package com.baeldung.junit.runfromjava.listnode;
|
||||
|
||||
public class RotateList {
|
||||
public ListNode rotateRight(ListNode list, int n) {
|
||||
|
||||
if (list == null || list.getNext() == null) {
|
||||
return list;
|
||||
}
|
||||
|
||||
ListNode tmpList = new ListNode(0);
|
||||
tmpList.setNext(list);
|
||||
ListNode fast = tmpList;
|
||||
ListNode slow = tmpList;
|
||||
|
||||
int listLength;
|
||||
for (listLength = 0; fast.getNext() != null; listLength++) {
|
||||
fast = fast.getNext();
|
||||
}
|
||||
|
||||
for (int j = listLength - n % listLength; j > 0; j--) {
|
||||
slow = slow.getNext();
|
||||
}
|
||||
|
||||
fast.setNext(tmpList.getNext());
|
||||
tmpList.setNext(slow.getNext());
|
||||
slow.setNext(null);
|
||||
|
||||
return tmpList.getNext();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
package com.baeldung.junit.runfromjava.listnode;
|
||||
|
||||
public class SwapNodes {
|
||||
public ListNode swapPairs(ListNode listHead) {
|
||||
|
||||
ListNode result = new ListNode(0);
|
||||
result.setNext(listHead);
|
||||
|
||||
ListNode current = result;
|
||||
|
||||
while (current.getNext() != null && current
|
||||
.getNext()
|
||||
.getNext() != null) {
|
||||
|
||||
ListNode first = current.getNext();
|
||||
ListNode second = current
|
||||
.getNext()
|
||||
.getNext();
|
||||
|
||||
first.setNext(second.getNext());
|
||||
current.setNext(second);
|
||||
current
|
||||
.getNext()
|
||||
.setNext(first);
|
||||
|
||||
current = current
|
||||
.getNext()
|
||||
.getNext();
|
||||
}
|
||||
|
||||
return result.getNext();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
package com.baeldung.junit4.runfromjava;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import com.baeldung.junit.runfromjava.listnode.ListNode;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
|
||||
public class ListNodeUnitTest {
|
||||
|
||||
@Test
|
||||
public void whenListHasOneElement_thenGetExpectedValue() {
|
||||
ListNode listNode = new ListNode(42);
|
||||
assertEquals(listNode.getValue(), 42);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenInitSimpleList_thenGettersGiveExpectedValues() {
|
||||
ListNode listNode = new ListNode(42, new ListNode(666, null));
|
||||
assertEquals(listNode.getValue(), 42);
|
||||
assertEquals(listNode.getNext()
|
||||
.getValue(), 666);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenConvertingListToString_thenGetExpectedValue() {
|
||||
ListNode listNode = new ListNode(42, new ListNode(666, new ListNode(15, null)));
|
||||
assertEquals(listNode.toString(), "42->666->15");
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
package com.baeldung.junit4.runfromjava;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import com.baeldung.junit.runfromjava.listnode.ListNode;
|
||||
import com.baeldung.junit.runfromjava.listnode.MergeLists;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
import org.junit.Before;
|
||||
|
||||
public class MergeListsUnitTest {
|
||||
|
||||
private ListNode listNode1;
|
||||
private ListNode listNode2;
|
||||
private MergeLists mergeLists;
|
||||
|
||||
@Before
|
||||
public void setUp() throws Exception {
|
||||
mergeLists = new MergeLists();
|
||||
listNode1 = new ListNode(2, new ListNode(4, new ListNode(6, new ListNode(8, null))));
|
||||
listNode2 = new ListNode(1, new ListNode(3, new ListNode(5, new ListNode(7, null))));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenMergingNormalLists_thenGetExpectedString() {
|
||||
assertEquals(mergeLists.merge(listNode1, listNode2)
|
||||
.toString(), "1->2->3->4->5->6->7->8");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenMergingNullLists_thenGetNull() {
|
||||
listNode1 = null;
|
||||
listNode2 = null;
|
||||
assertNull(mergeLists.merge(listNode1, listNode2));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,10 @@
|
|||
package com.baeldung.junit4.runfromjava;
|
||||
|
||||
import org.junit.runner.RunWith;
|
||||
import org.junit.runners.Suite;
|
||||
|
||||
@RunWith(Suite.class)
|
||||
@Suite.SuiteClasses({ ListNodeUnitTest.class, MergeListsUnitTest.class })
|
||||
public class MyTestSuite {
|
||||
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
package com.baeldung.junit4.runfromjava;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import com.baeldung.junit.runfromjava.listnode.ListNode;
|
||||
import com.baeldung.junit.runfromjava.listnode.RemovedNthElement;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
import org.junit.Before;
|
||||
|
||||
public class RemovedNthElementUnitTest {
|
||||
|
||||
private ListNode listNode;
|
||||
private RemovedNthElement removedNthElement;
|
||||
|
||||
@Before
|
||||
public void setUp() throws Exception {
|
||||
removedNthElement = new RemovedNthElement();
|
||||
listNode = new ListNode(42, new ListNode(666, new ListNode(15, new ListNode(3, null))));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenRemovingSecondElement_thenReturnExpectedList() {
|
||||
assertEquals(removedNthElement.removeNthFromEnd(listNode, 2)
|
||||
.toString(), "42->666->3");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenRemovingThirdElement_thenReturnExpectedList() {
|
||||
assertEquals(removedNthElement.removeNthFromEnd(listNode, 3)
|
||||
.toString(), "42->15->3");
|
||||
}
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
package com.baeldung.junit4.runfromjava;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import com.baeldung.junit.runfromjava.listnode.ListNode;
|
||||
import com.baeldung.junit.runfromjava.listnode.RotateList;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
import org.junit.Before;
|
||||
|
||||
public class RotateListUnitTest {
|
||||
private RotateList rotateList;
|
||||
private ListNode listNode;
|
||||
|
||||
@Before
|
||||
public void setUp() throws Exception {
|
||||
rotateList = new RotateList();
|
||||
listNode = new ListNode(42, new ListNode(666, new ListNode(15, new ListNode(3, null))));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenRotatingListTwice_thenReturnExpectedList() {
|
||||
assertEquals(rotateList.rotateRight(listNode, 2)
|
||||
.toString(), "15->3->42->666");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenRotatingListThreeTimes_thenReturnExpectedList() {
|
||||
assertEquals(rotateList.rotateRight(listNode, 3)
|
||||
.toString(), "666->15->3->42");
|
||||
}
|
||||
}
|
|
@ -0,0 +1,93 @@
|
|||
package com.baeldung.junit4.runfromjava;
|
||||
|
||||
import junit.extensions.ActiveTestSuite;
|
||||
import junit.extensions.RepeatedTest;
|
||||
import junit.framework.JUnit4TestAdapter;
|
||||
import junit.framework.Test;
|
||||
import junit.framework.TestSuite;
|
||||
import org.junit.internal.TextListener;
|
||||
import org.junit.runner.JUnitCore;
|
||||
import org.junit.runner.Result;
|
||||
import org.junit.runner.notification.Failure;
|
||||
|
||||
public class RunJUnit4Tests {
|
||||
|
||||
public static void runOne() {
|
||||
JUnitCore junit = new JUnitCore();
|
||||
junit.addListener(new TextListener(System.out));
|
||||
junit.run(MergeListsUnitTest.class);
|
||||
}
|
||||
|
||||
public static void runAllClasses() {
|
||||
JUnitCore junit = new JUnitCore();
|
||||
junit.addListener(new TextListener(System.out));
|
||||
|
||||
Result result = junit.run(ListNodeUnitTest.class, MergeListsUnitTest.class, RemovedNthElementUnitTest.class, RotateListUnitTest.class, SwapNodesUnitTest.class);
|
||||
|
||||
for (Failure failure : result.getFailures()) {
|
||||
System.out.println(failure.toString());
|
||||
}
|
||||
|
||||
resultReport(result);
|
||||
}
|
||||
|
||||
public static void runSuiteOfClasses() {
|
||||
JUnitCore junit = new JUnitCore();
|
||||
junit.addListener(new TextListener(System.out));
|
||||
Result result = junit.run(MyTestSuite.class);
|
||||
|
||||
for (Failure failure : result.getFailures()) {
|
||||
System.out.println(failure.toString());
|
||||
}
|
||||
|
||||
resultReport(result);
|
||||
}
|
||||
|
||||
public static void runRepeated() {
|
||||
Test test = new JUnit4TestAdapter(MergeListsUnitTest.class);
|
||||
RepeatedTest repeatedTest = new RepeatedTest(test, 5);
|
||||
|
||||
JUnitCore junit = new JUnitCore();
|
||||
junit.addListener(new TextListener(System.out));
|
||||
|
||||
junit.run(repeatedTest);
|
||||
}
|
||||
|
||||
public static void runRepeatedSuite() {
|
||||
TestSuite mySuite = new ActiveTestSuite();
|
||||
|
||||
JUnitCore junit = new JUnitCore();
|
||||
junit.addListener(new TextListener(System.out));
|
||||
|
||||
mySuite.addTest(new RepeatedTest(new JUnit4TestAdapter(MergeListsUnitTest.class), 5));
|
||||
mySuite.addTest(new RepeatedTest(new JUnit4TestAdapter(RemovedNthElementUnitTest.class), 3));
|
||||
|
||||
junit.run(mySuite);
|
||||
}
|
||||
|
||||
public static void resultReport(Result result) {
|
||||
System.out.println("Finished. Result: Failures: " +
|
||||
result.getFailureCount() + ". Ignored: " +
|
||||
result.getIgnoreCount() + ". Tests run: " +
|
||||
result.getRunCount() + ". Time: " +
|
||||
result.getRunTime() + "ms.");
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
System.out.println("\nRunning one test class:");
|
||||
runOne();
|
||||
|
||||
System.out.println("\nRunning all test classes:");
|
||||
runAllClasses();
|
||||
|
||||
System.out.println("\nRunning a suite of test classes:");
|
||||
runSuiteOfClasses();
|
||||
|
||||
System.out.println("\nRunning repeated tests:");
|
||||
runRepeated();
|
||||
|
||||
System.out.println("\nRunning repeated suite tests:");
|
||||
runRepeatedSuite();
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
package com.baeldung.junit4.runfromjava;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import com.baeldung.junit.runfromjava.listnode.ListNode;
|
||||
import com.baeldung.junit.runfromjava.listnode.SwapNodes;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
import org.junit.Before;
|
||||
|
||||
public class SwapNodesUnitTest {
|
||||
private SwapNodes swapNodes;
|
||||
private ListNode listNode;
|
||||
|
||||
@Before
|
||||
public void setUp() throws Exception {
|
||||
swapNodes = new SwapNodes();
|
||||
listNode = new ListNode(42, new ListNode(666, new ListNode(15, new ListNode(3, null))));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenSwappingPairs_thenReturnExpectedList() {
|
||||
assertEquals(swapNodes.swapPairs(listNode)
|
||||
.toString(), "666->42->3->15");
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
package com.baeldung.junit5.runfromjava;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import com.baeldung.junit.runfromjava.listnode.ListNode;
|
||||
|
||||
class ListNodeUnitTest {
|
||||
|
||||
@Test
|
||||
void whenListHasOneElement_thenGetExpectedValue() {
|
||||
ListNode listNode = new ListNode(42);
|
||||
assertEquals(listNode.getValue(), 42);
|
||||
}
|
||||
|
||||
@Test
|
||||
void whenInitSimpleList_thenGettersGiveExpectedValues() {
|
||||
ListNode listNode = new ListNode(42, new ListNode(666, null));
|
||||
assertEquals(listNode.getValue(), 42);
|
||||
assertEquals(listNode.getNext()
|
||||
.getValue(), 666);
|
||||
}
|
||||
|
||||
@Test
|
||||
void whenConvertingListToString_thenGetExpectedValue() {
|
||||
ListNode listNode = new ListNode(42, new ListNode(666, new ListNode(15, null)));
|
||||
assertEquals(listNode.toString(), "42->666->15");
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,38 @@
|
|||
package com.baeldung.junit5.runfromjava;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.RepeatedTest;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import com.baeldung.junit.runfromjava.listnode.ListNode;
|
||||
import com.baeldung.junit.runfromjava.listnode.MergeLists;
|
||||
|
||||
class MergeListsUnitTest {
|
||||
|
||||
private ListNode listNode1;
|
||||
private ListNode listNode2;
|
||||
private MergeLists mergeLists;
|
||||
|
||||
@BeforeEach
|
||||
void setUp() throws Exception {
|
||||
mergeLists = new MergeLists();
|
||||
listNode1 = new ListNode(2, new ListNode(4, new ListNode(6, new ListNode(8, null))));
|
||||
listNode2 = new ListNode(1, new ListNode(3, new ListNode(5, new ListNode(7, null))));
|
||||
}
|
||||
|
||||
@RepeatedTest(10)
|
||||
void whenMergingNormalLists_thenGetExpectedString() {
|
||||
assertEquals(mergeLists
|
||||
.merge(listNode1, listNode2)
|
||||
.toString(), "1->2->3->4->5->6->7->8");
|
||||
}
|
||||
|
||||
@RepeatedTest(5)
|
||||
void whenMergingNullLists_thenGetNull() {
|
||||
listNode1 = null;
|
||||
listNode2 = null;
|
||||
assertNull(mergeLists.merge(listNode1, listNode2));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
package com.baeldung.junit5.runfromjava;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import com.baeldung.junit.runfromjava.listnode.ListNode;
|
||||
import com.baeldung.junit.runfromjava.listnode.RemovedNthElement;
|
||||
|
||||
class RemovedNthElementUnitTest {
|
||||
|
||||
private ListNode listNode;
|
||||
private RemovedNthElement removedNthElement;
|
||||
|
||||
@BeforeEach
|
||||
void setUp() throws Exception {
|
||||
removedNthElement = new RemovedNthElement();
|
||||
listNode = new ListNode(42, new ListNode(666, new ListNode(15, new ListNode(3, null))));
|
||||
}
|
||||
|
||||
@Test
|
||||
void whenRemovingSecondElement_thenReturnExpectedList() {
|
||||
assertEquals(removedNthElement.removeNthFromEnd(listNode, 2)
|
||||
.toString(), "42->666->3");
|
||||
}
|
||||
|
||||
@Test
|
||||
void whenRemovingThirdElement_thenReturnExpectedList() {
|
||||
assertEquals(removedNthElement.removeNthFromEnd(listNode, 3)
|
||||
.toString(), "42->15->3");
|
||||
}
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
package com.baeldung.junit5.runfromjava;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import com.baeldung.junit.runfromjava.listnode.ListNode;
|
||||
import com.baeldung.junit.runfromjava.listnode.RotateList;
|
||||
|
||||
class RotateListUnitTest {
|
||||
private RotateList rotateList;
|
||||
private ListNode listNode;
|
||||
|
||||
@BeforeEach
|
||||
void setUp() throws Exception {
|
||||
rotateList = new RotateList();
|
||||
listNode = new ListNode(42, new ListNode(666, new ListNode(15, new ListNode(3, null))));
|
||||
}
|
||||
|
||||
@Test
|
||||
void whenRotatingListTwice_thenReturnExpectedList() {
|
||||
assertEquals(rotateList.rotateRight(listNode, 2)
|
||||
.toString(), "15->3->42->666");
|
||||
}
|
||||
|
||||
@Test
|
||||
void whenRotatingListThreeTimes_thenReturnExpectedList() {
|
||||
assertEquals(rotateList.rotateRight(listNode, 3)
|
||||
.toString(), "666->15->3->42");
|
||||
}
|
||||
}
|
|
@ -0,0 +1,59 @@
|
|||
package com.baeldung.junit5.runfromjava;
|
||||
|
||||
import static org.junit.platform.engine.discovery.ClassNameFilter.includeClassNamePatterns;
|
||||
import static org.junit.platform.engine.discovery.DiscoverySelectors.selectClass;
|
||||
import static org.junit.platform.engine.discovery.DiscoverySelectors.selectPackage;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
|
||||
import org.junit.platform.launcher.Launcher;
|
||||
import org.junit.platform.launcher.LauncherDiscoveryRequest;
|
||||
import org.junit.platform.launcher.TestPlan;
|
||||
import org.junit.platform.launcher.core.LauncherDiscoveryRequestBuilder;
|
||||
import org.junit.platform.launcher.core.LauncherFactory;
|
||||
import org.junit.platform.launcher.listeners.SummaryGeneratingListener;
|
||||
import org.junit.platform.launcher.listeners.TestExecutionSummary;
|
||||
|
||||
public class RunJUnit5Tests {
|
||||
SummaryGeneratingListener listener = new SummaryGeneratingListener();
|
||||
|
||||
public void runOne() {
|
||||
LauncherDiscoveryRequest request = LauncherDiscoveryRequestBuilder
|
||||
.request()
|
||||
.selectors(selectClass(RotateListUnitTest.class))
|
||||
.build();
|
||||
Launcher launcher = LauncherFactory.create();
|
||||
TestPlan testPlan = launcher.discover(request);
|
||||
|
||||
launcher.registerTestExecutionListeners(listener);
|
||||
launcher.execute(request);
|
||||
}
|
||||
|
||||
public void runAll() {
|
||||
LauncherDiscoveryRequest request = LauncherDiscoveryRequestBuilder
|
||||
.request()
|
||||
.selectors(selectPackage("com.baeldung.junit5.runfromjava"))
|
||||
.filters(includeClassNamePatterns(".*Test"))
|
||||
.build();
|
||||
Launcher launcher = LauncherFactory.create();
|
||||
|
||||
TestPlan testPlan = launcher.discover(request);
|
||||
|
||||
launcher.registerTestExecutionListeners(listener);
|
||||
|
||||
launcher.execute(request);
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
RunJUnit5Tests runner = new RunJUnit5Tests();
|
||||
runner.runAll();
|
||||
|
||||
TestExecutionSummary summary = runner.listener.getSummary();
|
||||
summary.printTo(new PrintWriter(System.out));
|
||||
|
||||
runner.runOne();
|
||||
|
||||
summary = runner.listener.getSummary();
|
||||
summary.printTo(new PrintWriter(System.out));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
package com.baeldung.junit5.runfromjava;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import com.baeldung.junit.runfromjava.listnode.ListNode;
|
||||
import com.baeldung.junit.runfromjava.listnode.SwapNodes;
|
||||
|
||||
class SwapNodesUnitTest {
|
||||
private SwapNodes swapNodes;
|
||||
private ListNode listNode;
|
||||
|
||||
@BeforeEach
|
||||
void setUp() throws Exception {
|
||||
swapNodes = new SwapNodes();
|
||||
listNode = new ListNode(42, new ListNode(666, new ListNode(15, new ListNode(3, null))));
|
||||
}
|
||||
|
||||
@Test
|
||||
void whenSwappingPairs_thenReturnExpectedList() {
|
||||
assertEquals(swapNodes.swapPairs(listNode)
|
||||
.toString(), "666->42->3->15");
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue