¿Cómo pruebo el código de Kotlin cuando compilo en JavaScript?

Tengo un proyecto de Kotlin JavaScript en IntelliJ (Ultimate). Quiero poder escribir testings para este proyecto.

He intentado varias cosas diferentes, desde escribir testings con Spek (esto sería ideal) hasta escribirlas en Karma / Jasmine. El problema con Spek es que no pude lograr que funcione con un proyecto de JavaScript. Se queja de que algunos files no son una biblioteca de JavaScript.

El problema con Karma / Jasmine es que no pude encontrar la manera de hacer que el cornetworkingor de testings recoja las testings de mi resultado de testing de Kotlin. Cuando las testings están escritas en JavaScript, no pueden acceder a mis objects de Kotlin porque no sé cómo hacer reference a ellos correctamente con todos los cambios de nombre que se producen cuando se hace la compilation de Kotlin a JavaScript.

Estoy abierto a cualquier cosa en este momento, ya que este es un proyecto angular, probablemente pueda averiguar cómo hacer una testing completa con Protractor, aunque realmente preferiría una cobertura de testing unitaria.

A continuación puede encontrar una testing simple que escribo usando QUnit. Creo que puedes hacer lo mismo con otras bibliotecas. Además, se puede mejorar haciéndolo más seguro.

main.kt :

 native("QUnit") val qunit: dynamic val assert = qunit.assert fun main(args: Array<String>) { qunit.test( "hello test") { assert -> val t: Any = "1" assert.ok(1 == t, "Passed!") } qunit.test( "hello test") { assert.ok(1 == 1, "Passed!") } } 

runner.html :

 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>QUnit Example</title> <link rel="stylesheet" href="https://code.jquery.com/qunit/qunit-1.17.1.css"> </head> <body> <div id="qunit"></div> <div id="qunit-fixture"></div> <script src="https://code.jquery.com/qunit/qunit-1.17.1.js"></script> <script src="lib/kotlin.js"></script> <script src="js_test.js"></script> </body> </html> 
  • Cómo mostrar una notificación en la aplicación que no se queda en el cajón de notifications de Snapchat
  • ¿Cómo crear proxy dynamic / transparente en Kotlin?
  • SpringBoot ArrayIndexOutOfBoundsException MethodParameter.getGenericParameterType
  • Kotlin, problema de creación de instancias y genérico
  • ¿Cómo recuperar el ID de recurso en fragment usando kotlin en Android?
  • La variable de vista de Kotlin es inesperadamente nula en el método Activity onCreate
  • Moshi ignora el campo en Kotlin
  • Android Architecture Components Room ViewModel CompleteableFormAction
  • "No hay suficiente información para inferir el parámetro T" con Kotlin y Android
  • Error de compilation de Kotlin: no se puede invocar ninguna de las siguientes funciones con los arguments suministrados
  • ¿Kotlin es "paso por valor" o "paso por reference"?