From eba564fe67fbc20d41cffe845b03fb5865ffab17 Mon Sep 17 00:00:00 2001 From: Volker Berlin Date: Sun, 15 Mar 2020 12:05:54 +0100 Subject: [PATCH] Tests for getClass().getName() --- .../jwebassembly/runtime/StructsNonGC.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/test/de/inetsoftware/jwebassembly/runtime/StructsNonGC.java b/test/de/inetsoftware/jwebassembly/runtime/StructsNonGC.java index f013ec6..8a89dc6 100644 --- a/test/de/inetsoftware/jwebassembly/runtime/StructsNonGC.java +++ b/test/de/inetsoftware/jwebassembly/runtime/StructsNonGC.java @@ -26,6 +26,7 @@ import org.junit.runners.Parameterized.Parameters; import de.inetsoftware.jwebassembly.ScriptEngine; import de.inetsoftware.jwebassembly.WasmRule; import de.inetsoftware.jwebassembly.api.annotation.Export; +import de.inetsoftware.jwebassembly.web.JSObject; public class StructsNonGC extends AbstractBaseTest { @@ -55,6 +56,9 @@ public class StructsNonGC extends AbstractBaseTest { addParam( list, script, "instanceof2" ); addParam( list, script, "instanceof3" ); addParam( list, script, "cast" ); + addParam( list, script, "objectClassName" ); + addParam( list, script, "integerClassName" ); + addParam( list, script, "classClassName" ); } rule.setTestParameters( list ); return list; @@ -170,6 +174,27 @@ public class StructsNonGC extends AbstractBaseTest { Integer val = (Integer)obj; return val.intValue(); } + + @Export + static String objectClassName() { + Object obj = new Object(); + Class clazz = obj.getClass(); + return JSObject.domString( clazz.getName() ); + } + + @Export + static String integerClassName() { + Object obj = new Integer(42); + Class clazz = obj.getClass(); + return JSObject.domString( clazz.getName() ); + } + + @Export + static String classClassName() { + Object obj = new Object(); + Class clazz = obj.getClass().getClass(); + return JSObject.domString( clazz.getName() ); + } } interface TestDefault {