Scripting: extend JSR-223 compilable with bindings test

proofs that #KT-47191 describes a misuse rather than a bug
This commit is contained in:
Ilya Chernikov
2022-05-18 13:03:17 +02:00
committed by teamcity
parent 120ecce753
commit da782fbfe8
@@ -213,12 +213,17 @@ obj
fun testSimpleCompilableWithBindings() {
val engine = ScriptEngineManager().getEngineByExtension("kts")
engine.put("z", 33)
val comp = (engine as Compilable).compile("val x = 10 + bindings[\"z\"] as Int\nx + 20")
val res1 = comp.eval()
val comp1 = (engine as Compilable).compile("val x = 10 + bindings[\"z\"] as Int\nx + 20")
val comp2 = (engine as Compilable).compile("val x = 10 + z\nx + 20")
val res1 = comp1.eval()
Assert.assertEquals(63, res1)
val res12 = comp2.eval()
Assert.assertEquals(63, res12)
engine.put("z", 44)
val res2 = comp.eval()
val res2 = comp1.eval()
Assert.assertEquals(74, res2)
val res22 = comp2.eval()
Assert.assertEquals(74, res22)
}
@Test