diff options
author | sebastian.sellmair <sebastian.sellmair@jetbrains.com> | 2020-08-24 14:02:07 +0200 |
---|---|---|
committer | Paweł Marks <Kordyjan@users.noreply.github.com> | 2020-08-25 16:21:32 +0200 |
commit | 7196323582dce7ca3f9b07262a1f94ecd8514539 (patch) | |
tree | 0c326aee84d4727d5cd5bc5c8198b992d5b58de6 /test-utils | |
parent | 219e2c98f5d03fc8581fd6ce9dd870919523be44 (diff) | |
download | dokka-7196323582dce7ca3f9b07262a1f94ecd8514539.tar.gz dokka-7196323582dce7ca3f9b07262a1f94ecd8514539.tar.bz2 dokka-7196323582dce7ca3f9b07262a1f94ecd8514539.zip |
- Move `test` projects into semantic parent projects
- Implement new `:test-utils` project
- Resolve requirement for Android SDK installation
Diffstat (limited to 'test-utils')
4 files changed, 38 insertions, 0 deletions
diff --git a/test-utils/build.gradle.kts b/test-utils/build.gradle.kts new file mode 100644 index 00000000..23e7ef40 --- /dev/null +++ b/test-utils/build.gradle.kts @@ -0,0 +1,4 @@ + +dependencies { + api(kotlin("test-junit")) +} diff --git a/test-utils/src/main/kotlin/org/jetbrains/dokka/test/assertIsInstance.kt b/test-utils/src/main/kotlin/org/jetbrains/dokka/test/assertIsInstance.kt new file mode 100644 index 00000000..d646d385 --- /dev/null +++ b/test-utils/src/main/kotlin/org/jetbrains/dokka/test/assertIsInstance.kt @@ -0,0 +1,17 @@ +package org.jetbrains.dokka.test + +import kotlin.contracts.ExperimentalContracts +import kotlin.contracts.contract + +@OptIn(ExperimentalContracts::class) +inline fun <reified T> assertIsInstance(obj: Any?): T { + contract { + returns() implies (obj is T) + } + + if (obj is T) { + return obj + } + + throw AssertionError("Expected instance of type ${T::class.qualifiedName} but found $obj") +} diff --git a/test-utils/src/main/kotlin/org/jetbrains/dokka/test/assumeAndroidSdkInstalled.kt b/test-utils/src/main/kotlin/org/jetbrains/dokka/test/assumeAndroidSdkInstalled.kt new file mode 100644 index 00000000..0c0e6d31 --- /dev/null +++ b/test-utils/src/main/kotlin/org/jetbrains/dokka/test/assumeAndroidSdkInstalled.kt @@ -0,0 +1,8 @@ +package org.jetbrains.dokka.test + +import org.junit.Assume.assumeTrue + +fun assumeAndroidSdkInstalled() { + if (isCI) return + assumeTrue(isAndroidSdkInstalled) +} diff --git a/test-utils/src/main/kotlin/org/jetbrains/dokka/test/environmentUtils.kt b/test-utils/src/main/kotlin/org/jetbrains/dokka/test/environmentUtils.kt new file mode 100644 index 00000000..e9b7be95 --- /dev/null +++ b/test-utils/src/main/kotlin/org/jetbrains/dokka/test/environmentUtils.kt @@ -0,0 +1,9 @@ +package org.jetbrains.dokka.test + +/** + * Indicating whether or not the current machine executing the test is a CI + */ +val isCI: Boolean get() = System.getenv("CI") == "true" + +val isAndroidSdkInstalled: Boolean = System.getenv("ANDROID_SDK_ROOT") != null || + System.getenv("ANDROID_HOME") != null |