diff --git a/examples/src/test/java/com/example/ExamplesTest.java b/examples/src/test/java/com/example/ExamplesTest.java
index 8d93e01..620f3ae 100644
--- a/examples/src/test/java/com/example/ExamplesTest.java
+++ b/examples/src/test/java/com/example/ExamplesTest.java
@@ -3,18 +3,16 @@ package com.example;
import org.testng.Assert;
import org.testng.annotations.Test;
-class ExampleTest {
- public static void main(String[] args) {
- new ExampleTest().verifyHello();
- }
+class ExamplesTest {
+ private final ExamplesLib example = new ExamplesLib();
@Test
- void testFail() {
- Assert.fail("failed");
+ void foo() {
+ Assert.assertNotEquals(example.getMessage(), "foo");
}
@Test
void verifyHello() {
- Assert.assertTrue(true);
+ Assert.assertEquals(example.getMessage(), "Hello World!");
}
}
\ No newline at end of file
diff --git a/src/bld/java/rife/bld/extension/TestNgOperationBuild.java b/src/bld/java/rife/bld/extension/TestNgOperationBuild.java
index d88d787..ce1ebd9 100644
--- a/src/bld/java/rife/bld/extension/TestNgOperationBuild.java
+++ b/src/bld/java/rife/bld/extension/TestNgOperationBuild.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2023 the original author or authors.
+ * Copyright 2023-2024 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -50,7 +50,7 @@ public class TestNgOperationBuild extends Project {
.include(dependency("org.testng", "testng", version(7, 9, 0)))
.include(dependency("org.junit.jupiter", "junit-jupiter", version(5, 10, 1)))
.include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1, 10, 1)))
- .include(dependency("org.assertj", "assertj-core", version(3, 24, 2)));
+ .include(dependency("org.assertj", "assertj-core", version(3, 25, 2)));
javadocOperation()
.javadocOptions()
diff --git a/src/test/java/rife/bld/extension/TestNgExample.java b/src/test/java/rife/bld/extension/TestNgExample.java
index 3997ea4..c2dc3e0 100644
--- a/src/test/java/rife/bld/extension/TestNgExample.java
+++ b/src/test/java/rife/bld/extension/TestNgExample.java
@@ -16,27 +16,15 @@
package rife.bld.extension;
-import org.testng.Assert;
-import org.testng.annotations.Test;
-
/**
- * Implements the TestNgSimpleTest class.
+ * Implements the TestNgExample class.
*
* @author Erik C. Thauvin
* @since 1.0
*/
-class TestNgSimpleTest {
- public static void main(String[] args) {
- new TestNgSimpleTest().verifyHello();
- }
-
- @Test
- void testFail() {
- Assert.fail("failed");
- }
-
- @Test
- void verifyHello() {
- Assert.assertTrue(true);
+@SuppressWarnings("PMD.TestClassWithoutTestCases")
+class TestNgExample {
+ public String getMessage() {
+ return "Hello World!";
}
}
diff --git a/src/test/java/rife/bld/extension/TestNgExampleTest.java b/src/test/java/rife/bld/extension/TestNgExampleTest.java
index 64fc698..a2c35b9 100644
--- a/src/test/java/rife/bld/extension/TestNgExampleTest.java
+++ b/src/test/java/rife/bld/extension/TestNgExampleTest.java
@@ -20,18 +20,21 @@ import org.testng.Assert;
import org.testng.annotations.Test;
/**
- * Implements the TestNgSimpleTest class.
+ * Implements the TestNgExampleTest class.
*
* @author Erik C. Thauvin
* @since 1.0
*/
-class TestNgSimple2Test {
- public static void main(String[] args) {
- new TestNgSimple2Test().verifyHello();
+class TestNgExampleTest {
+ private final TestNgExample example = new TestNgExample();
+
+ @Test
+ void foo() {
+ Assert.assertEquals(example.getMessage(), "foo");
}
@Test
void verifyHello() {
- Assert.assertTrue(true);
+ Assert.assertEquals(example.getMessage(), "Hello World!");
}
}
diff --git a/src/test/java/rife/bld/extension/TestNgOperationTest.java b/src/test/java/rife/bld/extension/TestNgOperationTest.java
index 88a7fa3..3bdc424 100644
--- a/src/test/java/rife/bld/extension/TestNgOperationTest.java
+++ b/src/test/java/rife/bld/extension/TestNgOperationTest.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2023 the original author or authors.
+ * Copyright 2023-2024 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -85,7 +85,7 @@ class TestNgOperationTest {
void testExecute() {
assertThatThrownBy(() ->
new TestNgOperation().fromProject(new Project())
- .testClass("rife.bld.extension.TestNgSimpleTest")
+ .testClass("rife.bld.extension.TestNgExampleTest")
.execute())
.as("with testClass").isInstanceOf(ExitStatusException.class);
@@ -97,8 +97,8 @@ class TestNgOperationTest {
assertThatCode(() ->
new TestNgOperation().fromProject(new Project())
- .testClass("rife.bld.extension.TestNgSimpleTest")
- .methods("rife.bld.extension.TestNgSimpleTest.verifyHello")
+ .testClass("rife.bld.extension.TestNgExampleTest")
+ .methods("rife.bld.extension.TestNgExampleTest.verifyHello")
.execute())
.as("with methods").doesNotThrowAnyException();
@@ -110,14 +110,14 @@ class TestNgOperationTest {
assertThatCode(() ->
new TestNgOperation().fromProject(new Project())
- .suites("src/test/resources/testng3.xml")
+ .suites("src/test/resources/testng2.xml")
.log(2)
.execute())
- .as("suite 3").doesNotThrowAnyException();
+ .as("suite 2 - log ").doesNotThrowAnyException();
assertThatCode(() ->
new TestNgOperation().fromProject(new Project())
- .suites("src/test/resources/testng3.xml")
+ .suites("src/test/resources/testng2.xml")
.testClasspath("lib/test/*", "build/main", "build/test")
.log(2)
.execute())
@@ -125,7 +125,7 @@ class TestNgOperationTest {
assertThatCode(() ->
new TestNgOperation().fromProject(new Project())
- .suites("src/test/resources/testng3.xml")
+ .suites("src/test/resources/testng2.xml")
.testClasspath(List.of("lib/test/*", "build/main", "build/test"))
.log(2)
.execute())
@@ -315,6 +315,15 @@ class TestNgOperationTest {
assertThat(op.options.get("-testrunfactory")).isEqualTo(FOO);
}
+ @Test
+ void testShareThreadPoolForDataProviders() {
+ var op = new TestNgOperation().shareThreadPoolForDataProviders(true);
+ assertThat(op.options.get("-shareThreadPoolForDataProviders")).isEqualTo("true");
+
+ op = new TestNgOperation().shareThreadPoolForDataProviders(false);
+ assertThat(op.options.get("-shareThreadPoolForDataProviders")).isNull();
+ }
+
@Test
void testSourceDir() {
var op = new TestNgOperation().sourceDir(FOO, BAR);
@@ -375,6 +384,15 @@ class TestNgOperationTest {
assertThat(op.options.get("-usedefaultlisteners")).isEqualTo("true");
}
+ @Test
+ void testUseGlobalThreadPool() {
+ var op = new TestNgOperation().useGlobalThreadPool(true);
+ assertThat(op.options.get("-useGlobalThreadPool")).isEqualTo("true");
+
+ op = new TestNgOperation().useGlobalThreadPool(false);
+ assertThat(op.options.get("-useGlobalThreadPool")).isNull();
+ }
+
@Test
void testVerbose() {
var op = new TestNgOperation().log(1);
diff --git a/src/test/resources/testng.xml b/src/test/resources/testng.xml
index 41fd8ae..8ad378e 100644
--- a/src/test/resources/testng.xml
+++ b/src/test/resources/testng.xml
@@ -2,7 +2,7 @@
-
+
\ No newline at end of file
diff --git a/src/test/resources/testng2.xml b/src/test/resources/testng2.xml
index ff01b87..44ddf38 100644
--- a/src/test/resources/testng2.xml
+++ b/src/test/resources/testng2.xml
@@ -2,9 +2,9 @@
-
+
-
+