Reformat kotlin.test library

This commit is contained in:
Ilya Gorbunov
2018-04-27 00:46:26 +03:00
parent 06aaa990be
commit d9d7b87fd9
16 changed files with 108 additions and 91 deletions
@@ -118,7 +118,8 @@ fun assertFails(message: String?, block: () -> Unit): Throwable {
* Since inline method doesn't allow to trace where it was invoked, it is required to pass a [message] to distinguish this method call from others.
*/
@InlineOnly
inline fun <reified T : Throwable> assertFailsWith(message: String? = null, noinline block: () -> Unit): T = assertFailsWith(T::class, message, block)
inline fun <reified T : Throwable> assertFailsWith(message: String? = null, noinline block: () -> Unit): T =
assertFailsWith(T::class, message, block)
/** Asserts that a [block] fails with a specific exception of type [exceptionClass] being thrown. */
fun <T : Throwable> assertFailsWith(exceptionClass: KClass<T>, block: () -> Unit): T = assertFailsWith(exceptionClass, null, block)
@@ -7,7 +7,9 @@ package org.junit
/** @suppress */
@Suppress("NO_ACTUAL_FOR_EXPECT")
@Deprecated("Use 'Test' from kotlin.test package",
replaceWith = ReplaceWith("kotlin.test.Test", "kotlin.test.Test"),
level = DeprecationLevel.WARNING)
@Deprecated(
"Use 'Test' from kotlin.test package",
replaceWith = ReplaceWith("kotlin.test.Test", "kotlin.test.Test"),
level = DeprecationLevel.WARNING
)
expect annotation class Test()
@@ -11,23 +11,29 @@ private var value = 5
class AnnotationsTest {
@BeforeTest fun setup() {
@BeforeTest
fun setup() {
value *= 2
}
@AfterTest fun teardown() {
@AfterTest
fun teardown() {
value /= 2
}
@Test fun testValue() {
@Test
fun testValue() {
assertEquals(10, value)
}
@Test fun testValueAgain() {
@Test
fun testValueAgain() {
assertEquals(10, value)
}
@Ignore @Test fun testValueWrong() {
@Ignore
@Test
fun testValueWrong() {
assertEquals(20, value)
}
@@ -30,24 +30,23 @@ class BasicAssertionsTest {
assertFailsWith<AssertionError> { throw AssertionError() }
}
@Test fun testAssertFailsWithFails() {
@Test
fun testAssertFailsWithFails() {
assertTrue(true) // at least one assertion required for qunit
withDefaultAsserter run@ {
withDefaultAsserter run@{
try {
assertFailsWith<IllegalStateException> { throw IllegalArgumentException() }
}
catch (e: AssertionError) {
} catch (e: AssertionError) {
return@run
}
throw AssertionError("Expected to fail")
}
withDefaultAsserter run@ {
withDefaultAsserter run@{
try {
assertFailsWith<IllegalStateException> { }
}
catch (e: AssertionError) {
assertFailsWith<IllegalStateException> { }
} catch (e: AssertionError) {
return@run
}
throw AssertionError("Expected to fail")
@@ -105,7 +104,7 @@ class BasicAssertionsTest {
@Test
fun testAssertFalseFails() {
checkFailedAssertion { assertFalse(true) }
checkFailedAssertion{ assertFalse { true } }
checkFailedAssertion { assertFalse { true } }
}
@Test
@@ -115,7 +114,7 @@ class BasicAssertionsTest {
@Test()
fun testAssertFailsFails() {
checkFailedAssertion { assertFails { } }
checkFailedAssertion { assertFails { } }
}
@@ -203,8 +202,7 @@ private fun withDefaultAsserter(block: () -> Unit) {
val current = overrideAsserter(DefaultAsserter())
try {
block()
}
finally {
} finally {
overrideAsserter(current)
}
}
@@ -5,23 +5,29 @@ var value = 5
class SimpleTest {
@BeforeTest fun beforeFun() {
@BeforeTest
fun beforeFun() {
value *= 2
}
@AfterTest fun afterFun() {
@AfterTest
fun afterFun() {
value /= 2
}
@Test fun testFoo() {
@Test
fun testFoo() {
assertNotEquals(value, foo())
}
@Test fun testBar() {
@Test
fun testBar() {
assertEquals(value, foo())
}
@Ignore @Test fun testFooWrong() {
@Ignore
@Test
fun testFooWrong() {
assertEquals(20, foo())
}
@@ -29,7 +35,8 @@ class SimpleTest {
@Ignore
class TestTest {
@Test fun emptyTest() {
@Test
fun emptyTest() {
}
}
@@ -58,8 +58,7 @@ internal object DefaultJsAsserter : Asserter {
override fun assertTrue(lazyMessage: () -> String?, actual: Boolean) {
if (!actual) {
failWithMessage(lazyMessage)
}
else {
} else {
invokeHook(true, lazyMessage)
}
}
@@ -89,8 +88,7 @@ internal object DefaultJsAsserter : Asserter {
override val actual: Any? = a
override val lazyMessage: () -> String? = lazyMessage
})
}
finally {
} finally {
e = undefined
a = undefined
}
@@ -21,9 +21,8 @@ internal fun setAdapter(adapter: dynamic) {
if (js("typeof adapter === 'string'")) {
NAME_TO_ADAPTER[adapter]?.let {
setAdapter(it.invoke())
}?: throw IllegalArgumentException("Unsupported test framework adapter: '$adapter'")
}
else {
} ?: throw IllegalArgumentException("Unsupported test framework adapter: '$adapter'")
} else {
currentAdapter = adapter
}
}
@@ -74,8 +73,9 @@ internal fun detectAdapter() = when {
}
internal val NAME_TO_ADAPTER: Map<String, () -> FrameworkAdapter> = mapOf(
"qunit" to ::QUnitAdapter,
"jasmine" to ::JasmineLikeAdapter,
"mocha" to ::JasmineLikeAdapter,
"jest" to ::JasmineLikeAdapter,
"auto" to ::detectAdapter)
"qunit" to ::QUnitAdapter,
"jasmine" to ::JasmineLikeAdapter,
"mocha" to ::JasmineLikeAdapter,
"jest" to ::JasmineLikeAdapter,
"auto" to ::detectAdapter
)
@@ -14,9 +14,10 @@ internal external object QUnit {
fun skip(name: String, testFn: (dynamic) -> Unit): Unit
}
/**
/*
* Jasmine/Mocha/Jest API
*/
internal external fun describe(name: String, fn: () -> Unit)
internal external fun xdescribe(name: String, fn: () -> Unit)
internal external fun it(name: String, fn: () -> Unit)
@@ -15,8 +15,7 @@ internal class JasmineLikeAdapter : FrameworkAdapter {
override fun suite(name: String, ignored: Boolean, suiteFn: () -> Unit) {
if (ignored) {
xdescribe(name, suiteFn)
}
else {
} else {
describe(name, suiteFn)
}
}
@@ -24,8 +23,7 @@ internal class JasmineLikeAdapter : FrameworkAdapter {
override fun test(name: String, ignored: Boolean, testFn: () -> Unit) {
if (ignored) {
xit(name, testFn)
}
else {
} else {
it(name, testFn)
}
}
@@ -25,8 +25,7 @@ internal class QUnitAdapter : FrameworkAdapter {
override fun test(name: String, ignored: Boolean, testFn: () -> Unit) {
if (ignored or ignoredSuite) {
QUnit.skip(name, wrapTest(testFn))
}
else {
} else {
QUnit.test(name, wrapTest(testFn))
}
}
@@ -5,7 +5,9 @@
package org.junit
@Deprecated("Use 'Test' from kotlin.test package",
replaceWith = ReplaceWith("kotlin.test.Test", "kotlin.test.Test"),
level = DeprecationLevel.WARNING)
@Deprecated(
"Use 'Test' from kotlin.test package",
replaceWith = ReplaceWith("kotlin.test.Test", "kotlin.test.Test"),
level = DeprecationLevel.WARNING
)
actual typealias Test = kotlin.test.Test
@@ -6,6 +6,7 @@
@file:Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
@file:JvmPackageName("kotlin.test.junit.annotations")
package kotlin.test
public actual typealias Test = org.junit.Test
@@ -6,6 +6,7 @@
@file:kotlin.jvm.JvmMultifileClass
@file:kotlin.jvm.JvmName("AssertionsKt")
@file:Suppress("INVISIBLE_REFERENCE", "INVISIBLE_MEMBER")
package kotlin.test
import kotlin.internal.*
@@ -32,7 +33,8 @@ private fun <T : Throwable> assertFailsWithImpl(exceptionClass: Class<T>, messag
/** Asserts that a [block] fails with a specific exception of type [exceptionClass] being thrown. */
actual fun <T : Throwable> assertFailsWith(exceptionClass: KClass<T>, message: String?, block: () -> Unit): T = assertFailsWithImpl(exceptionClass.java, message, block)
actual fun <T : Throwable> assertFailsWith(exceptionClass: KClass<T>, message: String?, block: () -> Unit): T =
assertFailsWithImpl(exceptionClass.java, message, block)
/**
@@ -4,6 +4,7 @@
*/
@file:Suppress("DEPRECATION")
package kotlin.test.tests
import org.junit.Assert
@@ -12,8 +12,7 @@ class TestJVMTest {
private fun expectAssertion(checkAssertion: (String?) -> Unit, block: () -> Unit) {
try {
block()
}
catch (e: AssertionError) {
} catch (e: AssertionError) {
checkAssertion(e.message)
return
}
@@ -30,67 +29,68 @@ class TestJVMTest {
@Test
fun assertEqualsMessage() {
expectAssertion( { msg ->
assertNotNull(msg); msg!!
assertTrue { msg.contains(expected.toString()) }
assertTrue { msg.contains(actual.toString()) }
assertFalse { msg.startsWith(".") }
}, { assertEquals<Any>(expected, actual) })
expectAssertion({ msg ->
assertNotNull(msg); msg!!
assertTrue { msg.contains(expected.toString()) }
assertTrue { msg.contains(actual.toString()) }
assertFalse { msg.startsWith(".") }
}, { assertEquals<Any>(expected, actual) })
expectAssertion( { msg ->
assertNotNull(msg); msg!!
assertTrue { msg.contains(message) }
assertTrue { msg.contains(expected.toString()) }
assertTrue { msg.contains(actual.toString()) }
} , { assertEquals<Any>(expected, actual, message) })
expectAssertion({ msg ->
assertNotNull(msg); msg!!
assertTrue { msg.contains(message) }
assertTrue { msg.contains(expected.toString()) }
assertTrue { msg.contains(actual.toString()) }
}, { assertEquals<Any>(expected, actual, message) })
}
@Test
fun assertNotEqualsMessage() {
expectAssertion( { msg ->
assertNotNull(msg); msg!!
assertTrue { msg.contains(actual.toString()) }
assertFalse { msg.startsWith(".") }
}, { assertNotEquals(actual, actual) })
expectAssertion({ msg ->
assertNotNull(msg); msg!!
assertTrue { msg.contains(actual.toString()) }
assertFalse { msg.startsWith(".") }
}, { assertNotEquals(actual, actual) })
expectAssertion( { msg ->
assertNotNull(msg); msg!!
assertTrue { msg.contains(message) }
assertTrue { msg.contains(actual.toString()) }
} , { assertNotEquals(actual, actual, message) })
expectAssertion({ msg ->
assertNotNull(msg); msg!!
assertTrue { msg.contains(message) }
assertTrue { msg.contains(actual.toString()) }
}, { assertNotEquals(actual, actual, message) })
}
@Test
fun assertTrueMessage() {
expectAssertion( { msg -> assertNotNull(msg) }, { assertTrue(false) })
expectAssertion( { msg -> assertNotNull(msg) }, { assertTrue { false } })
expectAssertion( { msg -> assertNotNull(msg) }, { assertTrue(null) { false } })
expectAssertion( { msg -> msg!!.contains(message)}, { assertTrue(false, message)})
expectAssertion( { msg -> msg!!.contains(message)}, { assertTrue(message) { false }})
expectAssertion({ msg -> assertNotNull(msg) }, { assertTrue(false) })
expectAssertion({ msg -> assertNotNull(msg) }, { assertTrue { false } })
expectAssertion({ msg -> assertNotNull(msg) }, { assertTrue(null) { false } })
expectAssertion({ msg -> msg!!.contains(message) }, { assertTrue(false, message) })
expectAssertion({ msg -> msg!!.contains(message) }, { assertTrue(message) { false } })
}
@Test
fun assertFalseMessage() {
expectAssertion( { msg -> assertNotNull(msg) }, { assertFalse(true) })
expectAssertion( { msg -> assertNotNull(msg) }, { assertFalse { true } })
expectAssertion( { msg -> assertNotNull(msg) }, { assertFalse(null) { true } })
expectAssertion( { msg -> assertTrue(msg!!.contains(message)) }, { assertFalse(true, message)})
expectAssertion( { msg -> assertTrue(msg!!.contains(message)) }, { assertFalse(message) { true }})
expectAssertion({ msg -> assertNotNull(msg) }, { assertFalse(true) })
expectAssertion({ msg -> assertNotNull(msg) }, { assertFalse { true } })
expectAssertion({ msg -> assertNotNull(msg) }, { assertFalse(null) { true } })
expectAssertion({ msg -> assertTrue(msg!!.contains(message)) }, { assertFalse(true, message) })
expectAssertion({ msg -> assertTrue(msg!!.contains(message)) }, { assertFalse(message) { true } })
}
@Test
fun assertNotNullMessage() {
expectAssertion( { msg -> msg!! }, { assertNotNull(null) })
expectAssertion( { msg -> assertTrue(msg!!.contains(message)) }, { assertNotNull(null, message)})
expectAssertion({ msg -> msg!! }, { assertNotNull(null) })
expectAssertion({ msg -> assertTrue(msg!!.contains(message)) }, { assertNotNull(null, message) })
}
@Test
fun assertNullMessage() {
expectAssertion( { msg -> msg!! }, { assertNull(actual) })
expectAssertion( { msg -> msg!!
assertTrue(msg.contains(message))
assertTrue(msg.contains(actual.toString()))
}, { assertNull(actual, message)})
expectAssertion({ msg -> msg!! }, { assertNull(actual) })
expectAssertion({ msg ->
msg!!
assertTrue(msg.contains(message))
assertTrue(msg.contains(actual.toString()))
}, { assertNull(actual, message) })
}
}
@@ -6,6 +6,7 @@
@file:Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
@file:JvmPackageName("kotlin.test.testng.annotations")
package kotlin.test
public actual typealias Test = org.testng.annotations.Test