diff options
author | Florian Dold <florian@dold.me> | 2022-05-16 19:58:31 +0200 |
---|---|---|
committer | Florian Dold <florian@dold.me> | 2022-05-19 11:05:18 +0200 |
commit | 023ea96d26a65d29d408ef78c9405411bb842afd (patch) | |
tree | 658717478320443c4dd3cb6c5c906cfa443d2cad /taler-kotlin-android/src/test/java/net/taler/common/TestUtils.kt | |
parent | 29e19d02b7befa0c8e18b9c73ac912bb256aa7ee (diff) | |
download | taler-android-023ea96d26a65d29d408ef78c9405411bb842afd.tar.gz taler-android-023ea96d26a65d29d408ef78c9405411bb842afd.tar.bz2 taler-android-023ea96d26a65d29d408ef78c9405411bb842afd.zip |
-remove multiplatform dependency, library upgrade WIP
Diffstat (limited to 'taler-kotlin-android/src/test/java/net/taler/common/TestUtils.kt')
-rw-r--r-- | taler-kotlin-android/src/test/java/net/taler/common/TestUtils.kt | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/taler-kotlin-android/src/test/java/net/taler/common/TestUtils.kt b/taler-kotlin-android/src/test/java/net/taler/common/TestUtils.kt new file mode 100644 index 0000000..b0f191d --- /dev/null +++ b/taler-kotlin-android/src/test/java/net/taler/common/TestUtils.kt @@ -0,0 +1,40 @@ +/* + * This file is part of GNU Taler + * (C) 2020 Taler Systems S.A. + * + * GNU Taler is free software; you can redistribute it and/or modify it under the + * terms of the GNU General Public License as published by the Free Software + * Foundation; either version 3, or (at your option) any later version. + * + * GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY + * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + * A PARTICULAR PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along with + * GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> + */ + +package net.taler.common + +import kotlin.random.Random +import org.junit.Assert.assertTrue +import org.junit.Assert.fail + +private val charPool: List<Char> = ('a'..'z') + ('A'..'Z') + ('0'..'9') +fun getRandomString(minLength: Int = 1, maxLength: Int = Random.nextInt(0, 1337)) = + (minLength..maxLength) + .map { Random.nextInt(0, charPool.size) } + .map(charPool::get) + .joinToString("") + +inline fun <reified T : Throwable> assertThrows( + msg: String? = null, + function: () -> Any +) { + try { + function.invoke() + fail(msg) + } catch (e: Exception) { + assertTrue(e is T) + } +} |