Unit testing API: better mapping on JUnit, proper formatting assertion details when message is not specified

#KT-8929 Fixed
Sensible default message for assertion methods.
#KT-8314 Fixed
Provide assertFailsWith also with KClass and reified type argument.
This commit is contained in:
Ilya Gorbunov
2015-09-03 22:15:47 +03:00
parent e20c86c5dc
commit 44f7b6d699
6 changed files with 102 additions and 114 deletions
+1 -1
View File
@@ -5,5 +5,5 @@ package QUnit
*/
native
public fun ok(actual: Boolean, message: String): Unit = noImpl;
public fun ok(actual: Boolean, message: String?): Unit = noImpl;
+6 -18
View File
@@ -17,27 +17,15 @@ public var asserter: Asserter = QUnitAsserter()
public class QUnitAsserter(): Asserter {
public override fun assertTrue(message: String, actual: Boolean) {
public override fun assertTrue(lazyMessage: () -> String?, actual: Boolean) {
QUnit.ok(actual, lazyMessage())
}
public override fun assertTrue(message: String?, actual: Boolean) {
QUnit.ok(actual, message)
}
public override fun assertEquals(message: String, expected: Any?, actual: Any?) {
QUnit.ok(expected == actual, "$message. Expected <$expected> actual <$actual>")
}
public override fun assertNotEquals(message: String, illegal: Any?, actual: Any?) {
QUnit.ok(illegal != actual, "$message. Illegal value: <$illegal>")
}
public override fun assertNotNull(message: String, actual: Any?) {
QUnit.ok(actual != null, message)
}
public override fun assertNull(message: String, actual: Any?) {
QUnit.ok(actual == null, message)
}
public override fun fail(message: String) {
public override fun fail(message: String?) {
QUnit.ok(false, message)
}
}