Skip to content

Commit e0851bc

Browse files
committed
Add currently error test for raw types in headers
1 parent 687a422 commit e0851bc

1 file changed

Lines changed: 63 additions & 0 deletions

File tree

  • ScriptingExample/src/test/java/org/openzen/zenscript/scriptingexample/tests/actual_test/java_native
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
package org.openzen.zenscript.scriptingexample.tests.actual_test.java_native;
2+
3+
import org.junit.jupiter.api.Test;
4+
import org.openzen.zencode.java.ZenCodeGlobals;
5+
import org.openzen.zencode.java.ZenCodeType;
6+
import org.openzen.zenscript.scriptingexample.tests.helpers.ZenCodeTest;
7+
8+
import java.util.List;
9+
10+
public class RawTypeInHeaderTest extends ZenCodeTest {
11+
12+
@Override
13+
public List<Class<?>> getRequiredClasses() {
14+
final List<Class<?>> requiredClasses = super.getRequiredClasses();
15+
requiredClasses.add(GenClass.class);
16+
requiredClasses.add(TestGlobals.class);
17+
return requiredClasses;
18+
}
19+
20+
@Test
21+
void testRawTypeErrors1() {
22+
addScript(
23+
"foo1(new test_module.java_native.GenClass<string>());\n",
24+
"RawTypeInHeaderTest_testRawTypeErrors.zs");
25+
26+
executeEngine();
27+
28+
logger.assertNoErrors();
29+
logger.assertNoWarnings();
30+
}
31+
32+
@Test
33+
void testRawTypeErrors2() {
34+
addScript(
35+
"foo2(new test_module.java_native.GenClass<string>());\n",
36+
"RawTypeInHeaderTest_testRawTypeErrors.zs");
37+
38+
executeEngine();
39+
40+
logger.assertNoErrors();
41+
logger.assertNoWarnings();
42+
}
43+
44+
@ZenCodeType.Name("test_module.java_native.TestClass")
45+
public static final class TestGlobals {
46+
@ZenCodeGlobals.Global
47+
public static void foo1(GenClass<String> clazz) {
48+
49+
}
50+
@ZenCodeGlobals.Global
51+
public static void foo2(GenClass clazz) {
52+
53+
}
54+
}
55+
56+
@ZenCodeType.Name("test_module.java_native.GenClass")
57+
public static final class GenClass<T> {
58+
@ZenCodeType.Constructor
59+
public GenClass() {
60+
}
61+
}
62+
63+
}

0 commit comments

Comments
 (0)