1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 package org.htmlunit.javascript;
16
17 import org.htmlunit.WebDriverTestCase;
18 import org.htmlunit.junit.BrowserRunner;
19 import org.htmlunit.junit.annotation.Alerts;
20 import org.junit.Test;
21 import org.junit.runner.RunWith;
22
23
24
25
26
27
28
29 @RunWith(BrowserRunner.class)
30 public class NativeJSONTest extends WebDriverTestCase {
31
32
33
34
35 @Test
36 @Alerts({"x,y", "SyntaxError"})
37 public void getArraySyntax() throws Exception {
38 final String html = DOCTYPE_HTML
39 + "<html>\n"
40 + "<head>\n"
41 + "<script>\n"
42 + LOG_TITLE_FUNCTION
43 + " function doTest() {\n"
44 + " var text = '{\"name\": [\"x\", \"y\"]}';\n"
45 + " var obj = JSON.parse(text);"
46 + " log(obj.name);\n"
47
48 + " text = '{\"name\": [, \"y\"]}';\n"
49 + " try {\n"
50 + " var obj = JSON.parse(text);"
51 + " } catch(e) { logEx(e); }\n"
52 + " }\n"
53 + "</script>\n"
54 + "</head>\n"
55 + "<body onload='doTest()'>\n"
56 + "</body></html>";
57
58 loadPageVerifyTitle2(html);
59 }
60 }