on master help sign in
Add nanojson
commit1aa522952adc962342bc36a0c694c89cd186a506 authorMatt Mastracci <matthew@mastracci.com> dateWed 26 Oct 2016, 15:01 (10 years ago) parent905cfcb
7 files changed+58
parsers/test_java_nanojson_1_0/META-INF/MANIFEST.MF+3 parsers/test_java_nanojson_1_0/README.txt+5 parsers/test_java_nanojson_1_0/TestJSONParsing.class parsers/test_java_nanojson_1_0/TestJSONParsing.jar parsers/test_java_nanojson_1_0/TestJSONParsing.java+45 parsers/test_java_nanojson_1_0/nanojson-1.0.jar run_tests.py+5
parsers/test_java_nanojson_1_0/META-INF/MANIFEST.MFnew file+3
@@ -0,0 +1,3 @@
1+Manifest-Version: 1.0
2+Main-Class: TestJSONParsing
3+Class-Path: nanojson-1.0.jar
parsers/test_java_nanojson_1_0/README.txtnew file+5
@@ -0,0 +1,5 @@
1+javac -cp ".:nanojson-1.0.jar" TestJSONParsing.java
2+
3+jar cvfm TestJSONParsing.jar META-INF/MANIFEST.MF nanojson-1.0.jar TestJSONParsing.class
4+
5+java -jar TestJSONParsing.jar
parsers/test_java_nanojson_1_0/TestJSONParsing.classnew file

Binary file not shown.

parsers/test_java_nanojson_1_0/TestJSONParsing.jarnew file

Binary file not shown.

parsers/test_java_nanojson_1_0/TestJSONParsing.javanew file+45
@@ -0,0 +1,45 @@
1+import java.io.ByteArrayInputStream;
2+import java.io.IOException;
3+import java.nio.file.Files;
4+import java.nio.file.Paths;
5+
6+import java.io.File;
7+import java.util.Map;
8+
9+import com.grack.nanojson.JsonParser;
10+
11+public class TestJSONParsing {
12+
13+ public static boolean isValidJSON(byte[] b) {
14+ try {
15+ Object o = JsonParser.any().from(new ByteArrayInputStream(b));
16+ if (new String(b).trim().equals("null"))
17+ return o == null;
18+ return o != null;
19+ } catch (Exception e) {
20+ System.out.println(e);
21+ return false;
22+ }
23+ }
24+
25+ public static void main(String[] args) {
26+
27+ if (args.length == 0) {
28+ System.out.println("Usage: java TestJSONParsing file.json");
29+ System.exit(2);
30+ }
31+
32+ try {
33+ byte[] b = Files.readAllBytes(Paths.get(args[0]));
34+ if(isValidJSON(b)) {
35+ System.out.println("valid");
36+ System.exit(0);
37+ }
38+ System.out.println("invalid");
39+ System.exit(1);
40+ } catch (IOException e) {
41+ System.out.println("not found");
42+ System.exit(2);
43+ }
44+ }
45+}
parsers/test_java_nanojson_1_0/nanojson-1.0.jarnew file

Binary file not shown.

run_tests.py+5
@@ -207,6 +207,11 @@ programs = {
207207 "url":"",
208208 "commands":["/usr/bin/java", "-jar", os.path.join(PARSERS_DIR, "test_java_jackson_2_8_4/TestJSONParsing.jar")]
209209 },
210+ "Java nanojson 1.0":
211+ {
212+ "url":"",
213+ "commands":["/usr/bin/java", "-jar", os.path.join(PARSERS_DIR, "test_java_nanojson_1_0/TestJSONParsing.jar")]
214+ },
210215 "Haskell Aeson 0.11.2.1":
211216 {
212217 "url":"https://github.com/bos/aeson",