Fix js SRNG returning undefined with kotlin js 1.4

This commit is contained in:
Ugljesa Jovanovic authored and Ugljesa Jovanovic committed 2020-05-18 19:37:57 +02:00
1 parent 0fbaed2065
commit e0eb1219c6
2 files changed
+14 -4

No files matched your search

+8
View File
@@ -408,6 +408,14 @@ tasks {
} }
} }
val legacyjsNodeTest by getting(KotlinJsTest::class) {
testLogging {
events("PASSED", "FAILED", "SKIPPED")
showStandardStreams = true
}
}
// val jsIrBrowserTest by getting(KotlinJsTest::class) { // val jsIrBrowserTest by getting(KotlinJsTest::class) {
// testLogging { // testLogging {
// events("PASSED", "FAILED", "SKIPPED") // events("PASSED", "FAILED", "SKIPPED")
@@ -26,11 +26,13 @@ actual object SRNG {
@ExperimentalUnsignedTypes @ExperimentalUnsignedTypes
actual fun getRandomBytes(amount: Int): Array<UByte> { actual fun getRandomBytes(amount: Int): Array<UByte> {
val runningOnNode = js( val runningOnNode = js(
"if (typeof window === 'undefined') {\n" + "var isNode = false;\n" +
" true;\n" + "if (typeof window === 'undefined') {\n" +
" isNode = true;\n" +
" } else {\n" + " } else {\n" +
" false;\n" + " isNode = false;\n" +
" }" " }\n" +
"return isNode;"
) )
val randomBytes = if (runningOnNode) { val randomBytes = if (runningOnNode) {
js("require('crypto')").randomBytes(amount).toJSON().data js("require('crypto')").randomBytes(amount).toJSON().data