56002
|
1 |
package json;
|
|
2 |
|
|
3 |
import com.oracle.jmx.remote.rest.json.JSONElement;
|
|
4 |
import com.oracle.jmx.remote.rest.json.parser.JSONParser;
|
|
5 |
import com.oracle.jmx.remote.rest.json.parser.ParseException;
|
|
6 |
import com.oracle.jmx.remote.rest.json.parser.TokenMgrError;
|
|
7 |
import org.testng.annotations.DataProvider;
|
|
8 |
import org.testng.annotations.Test;
|
|
9 |
|
|
10 |
@Test
|
|
11 |
public class JsonParserTest {
|
|
12 |
|
|
13 |
@DataProvider(name = "getOkStrings")
|
|
14 |
Object[][] getOkStrings() {
|
|
15 |
Object[][] output = new Object[5][1];
|
|
16 |
output[0][0] = "\"ac" + "\nde\\bf\"";
|
|
17 |
output[1][0] = "\"abcd\\\"cdef\"";
|
|
18 |
output[2][0] = "\"abcd\\\\cdef\"";
|
|
19 |
output[3][0] = "\"abc\\rdcde\\f\"";
|
|
20 |
output[4][0] = "\"\"";
|
|
21 |
return output;
|
|
22 |
}
|
|
23 |
|
|
24 |
@DataProvider(name = "getKoStrings")
|
|
25 |
Object[][] getKoStrings() {
|
|
26 |
Object[][] output = new Object[3][1];
|
|
27 |
output[0][0] = "\"a\\ef\"";
|
|
28 |
output[1][0] = "\"abg\"cde\"";
|
|
29 |
output[2][0] = "\"a\\\bgcde\"";
|
|
30 |
return output;
|
|
31 |
}
|
|
32 |
|
|
33 |
@Test(dataProvider = "getOkStrings")
|
|
34 |
public void testOk(String input) throws ParseException {
|
|
35 |
JSONParser parser = new JSONParser(input);
|
|
36 |
System.out.println("Input: " + input + ", Output: " +parser.parse().toJsonString());
|
|
37 |
}
|
|
38 |
|
|
39 |
@Test(dataProvider = "getKoStrings")
|
|
40 |
public void testKo(String input) {
|
|
41 |
try{
|
|
42 |
JSONParser parser = new JSONParser(input);
|
|
43 |
JSONElement parse = parser.parse();
|
|
44 |
System.out.println("Input: " + input + ", Output: " + parse.toJsonString());
|
|
45 |
throw new RuntimeException("FAILED");
|
|
46 |
} catch (ParseException ex) {
|
|
47 |
} catch (TokenMgrError error) {}
|
|
48 |
}
|
|
49 |
}
|