|
32 | 32 | package org.scijava.script; |
33 | 33 |
|
34 | 34 | import static org.junit.Assert.assertEquals; |
| 35 | +import static org.junit.Assert.assertSame; |
35 | 36 |
|
36 | 37 | import java.io.File; |
37 | 38 | import java.util.List; |
38 | 39 |
|
| 40 | +import javax.script.ScriptException; |
| 41 | + |
39 | 42 | import org.junit.Test; |
40 | 43 | import org.scijava.Context; |
41 | 44 | import org.scijava.util.AppUtils; |
@@ -72,4 +75,33 @@ public void testSystemProperty() { |
72 | 75 | assertEquals(dir2, scriptDirs.get(2).getAbsolutePath()); |
73 | 76 | } |
74 | 77 |
|
| 78 | + @Test |
| 79 | + public void testArrayAliases() throws ScriptException { |
| 80 | + final Context ctx = new Context(ScriptService.class); |
| 81 | + final ScriptService ss = ctx.service(ScriptService.class); |
| 82 | + |
| 83 | + final Class<?> pInt2D = ss.lookupClass("int[][]"); |
| 84 | + assertSame(int[][].class, pInt2D); |
| 85 | + final Class<?> pInt1D = ss.lookupClass("int[]"); |
| 86 | + assertSame(int[].class, pInt1D); |
| 87 | + final Class<?> pInt = ss.lookupClass("int"); |
| 88 | + assertSame(int.class, pInt); |
| 89 | + |
| 90 | + final Class<?> oInt2D = ss.lookupClass("Integer[][]"); |
| 91 | + assertSame(Integer[][].class, oInt2D); |
| 92 | + final Class<?> oInt1D = ss.lookupClass("Integer[]"); |
| 93 | + assertSame(Integer[].class, oInt1D); |
| 94 | + final Class<?> oInt = ss.lookupClass("Integer"); |
| 95 | + assertSame(Integer.class, oInt); |
| 96 | + |
| 97 | + final Class<?> str2D = ss.lookupClass("String[][]"); |
| 98 | + assertSame(String[][].class, str2D); |
| 99 | + final Class<?> str1D = ss.lookupClass("String[]"); |
| 100 | + assertSame(String[].class, str1D); |
| 101 | + final Class<?> str = ss.lookupClass("String"); |
| 102 | + assertSame(String.class, str); |
| 103 | + |
| 104 | + ctx.dispose(); |
| 105 | + } |
| 106 | + |
75 | 107 | } |
0 commit comments