diff --git a/libraries/kotlin-jdbc/kotlin-jdbc.iml b/libraries/kotlin-jdbc/kotlin-jdbc.iml index d0d1994b0ae..f30be4620f1 100644 --- a/libraries/kotlin-jdbc/kotlin-jdbc.iml +++ b/libraries/kotlin-jdbc/kotlin-jdbc.iml @@ -6,6 +6,7 @@ + diff --git a/libraries/kunit/src/main/resources/META-INF/services/kotlin.test.Asserter b/libraries/kunit/src/main/resources/META-INF/services/kotlin.test.Asserter new file mode 100644 index 00000000000..a26035be809 --- /dev/null +++ b/libraries/kunit/src/main/resources/META-INF/services/kotlin.test.Asserter @@ -0,0 +1 @@ +org.jetbrains.kotlin.test.junit.JUnitAsserter \ No newline at end of file diff --git a/libraries/stdlib/pom.xml b/libraries/stdlib/pom.xml index 4839e765ad1..e65412527b4 100644 --- a/libraries/stdlib/pom.xml +++ b/libraries/stdlib/pom.xml @@ -14,6 +14,12 @@ stdlib + + org.jetbrains.kotlin + kunit + ${project.version} + test + junit junit diff --git a/libraries/stdlib/src/test/Test.kt b/libraries/stdlib/src/test/Test.kt index 646b97ee938..83e8a2522e8 100644 --- a/libraries/stdlib/src/test/Test.kt +++ b/libraries/stdlib/src/test/Test.kt @@ -7,28 +7,33 @@ import java.util.ServiceLoader private var _asserter: Asserter? = null -fun asserter(): Asserter { - if (_asserter == null) { - /* TODO - val loader = ServiceLoader.load(javaClass) - for (a in loader) { - if (a != null) { - _asserter = a - break - } - } - */ +public var asserter: Asserter + get() { if (_asserter == null) { - _asserter = DefaultAsserter() + val klass = javaClass() + val loader = ServiceLoader.load(klass) + for (a in loader) { + if (a != null) { + _asserter = a + break + } + } + if (_asserter == null) { + _asserter = DefaultAsserter() + } + //debug("using asserter $_asserter") } + return _asserter.sure() + } + + set(value) { + _asserter = value } - return _asserter.sure() -} /** Asserts that the given block returns true */ inline fun assertTrue(message: String, block: ()-> Boolean) { val actual = block() - asserter().assertTrue(message, actual) + asserter.assertTrue(message, actual) } /** Asserts that the given block returns true */ @@ -54,22 +59,22 @@ inline fun assertFalse(actual: Boolean, message: String = "") { /** Asserts that the expected value is equal to the actual value, with an optional message */ inline fun assertEquals(expected: Any?, actual: Any?, message: String = "") { - asserter().assertEquals(message, expected, actual) + asserter.assertEquals(message, expected, actual) } /** Asserts that the expression is not null, with an optional message */ inline fun assertNotNull(actual: Any?, message: String = "") { - asserter().assertNotNull(message, actual) + asserter.assertNotNull(message, actual) } /** Asserts that the expression is null, with an optional message */ inline fun assertNull(actual: Any?, message: String = "") { - asserter().assertNull(message, actual) + asserter.assertNull(message, actual) } /** Marks a test as having failed if this point in the execution path is reached, with an optional message */ inline fun fail(message: String = "") { - asserter().fail(message) + asserter.fail(message) } /** Asserts that given function block returns the given expected value */ @@ -87,7 +92,7 @@ inline fun expect(expected: T, message: String, block: ()-> T) { fun fails(block: ()-> Unit): Throwable? { try { block() - asserter().fail("Expected an exception to be thrown") + asserter.fail("Expected an exception to be thrown") return null } catch (e: Throwable) { println("Caught excepted exception: $e") @@ -99,7 +104,7 @@ fun fails(block: ()-> Unit): Throwable? { fun failsWith(block: ()-> Unit) { try { block() - asserter().fail("Expected an exception to be thrown") + asserter.fail("Expected an exception to be thrown") } catch (e: T) { println("Caught excepted exception: $e") // OK