You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@labs.apache.org by yo...@apache.org on 2006/12/04 06:22:09 UTC
svn commit: r482083 -
/labs/noggit/src/test/java/org/apache/noggit/TestJSONParser.java
Author: yonik
Date: Sun Dec 3 21:22:09 2006
New Revision: 482083
URL: http://svn.apache.org/viewvc?view=rev&rev=482083
Log:
more tests: string, bool, more array, object
Modified:
labs/noggit/src/test/java/org/apache/noggit/TestJSONParser.java
Modified: labs/noggit/src/test/java/org/apache/noggit/TestJSONParser.java
URL: http://svn.apache.org/viewvc/labs/noggit/src/test/java/org/apache/noggit/TestJSONParser.java?view=diff&rev=482083&r1=482082&r2=482083
==============================================================================
--- labs/noggit/src/test/java/org/apache/noggit/TestJSONParser.java (original)
+++ labs/noggit/src/test/java/org/apache/noggit/TestJSONParser.java Sun Dec 3 21:22:09 2006
@@ -148,6 +148,7 @@
case JSONParser.NULL: got=N; p.getNull(); break; // optional
case JSONParser.BOOLEAN: got=o(p.getBoolean()); break;
case JSONParser.EOF: got=e; break;
+ case JSONParser.STRING: got=p.getString(); break;
default: got="Unexpected Event Number " + ev;
}
@@ -186,7 +187,56 @@
public void testNull() throws IOException {
err("[nullz]");
parse("[null]","[0]");
- parse("{'hi':null}","{s0}");
+ parse("{'hi':null}",new Object[]{m,"hi",N,M,e});
+ }
+
+ public void testBool() throws IOException {
+ err("[True]");
+ err("[False]");
+ err("[TRUE]");
+ err("[FALSE]");
+ err("[truex]");
+ err("[falsex]");
+
+ parse("[false,true, false , true ]",new Object[]{a,f,t,f,t,A,e});
+ }
+
+ public void testString() throws IOException {
+ // NOTE: single quotes are converted to double quotes by this
+ // testsuite!
+ err("[']");
+ err("[',]");
+ err("{'}");
+ err("{',}");
+
+ err("['\\u111']");
+ err("['\\u11']");
+ err("['\\u1']");
+ err("['\\']");
+ err("['\\ ']");
+ err("['\\U1111']");
+
+
+ parse("['']",new Object[]{a,"",A,e});
+ parse("['\\\\']",new Object[]{a,"\\",A,e});
+ parse("['X\\\\']",new Object[]{a,"X\\",A,e});
+ parse("['\\\\X']",new Object[]{a,"\\X",A,e});
+ parse("['\\'']",new Object[]{a,"\"",A,e});
+
+
+ String esc="\\n\\r\\tX\\b\\f\\/\\\\X\\\"";
+ String exp="\n\r\tX\b\f/\\X\"";
+ parse("['" + esc + "']",new Object[]{a,exp,A,e});
+ parse("['" + esc+esc+esc+esc+esc + "']",new Object[]{a,exp+exp+exp+exp+exp,A,e});
+
+ esc="\\u004A";
+ exp="\u004A";
+ parse("['" + esc + "']",new Object[]{a,exp,A,e});
+
+ esc="\\u0000\\u1111\\u2222\\u12AF\\u12BC\\u19DE";
+ exp="\u0000\u1111\u2222\u12AF\u12BC\u19DE";
+ parse("['" + esc + "']",new Object[]{a,exp,A,e});
+
}
public void testNumbers() throws IOException {
@@ -313,13 +363,33 @@
parse("{'':null}","{s0}");
err("}");
+ err("[}]");
err("{");
+ err("[{]");
err("{{}");
+ err("[{{}]");
err("{}}");;
+ err("[{}}]");;
err("{1}");
+ err("[{1}]");
err("{'a'}");
err("{'a','b'}");
err("{null:'b'}");
+ err("{[]:'b'}");
+ err("{true:'b'}");
+ err("{false:'b'}");
+ err("{{'a':'b'}:'c'}");
+
+ parse("{"+"}", new Object[]{m,M,e});
+ parse("{'a':'b'}", new Object[]{m,"a","b",M,e});
+ parse("{'a':5}", new Object[]{m,"a",o(5),M,e});
+ parse("{'a':null}", new Object[]{m,"a",N,M,e});
+ parse("{'a':[]}", new Object[]{m,"a",a,A,M,e});
+ parse("{'a':{'b':'c'}}", new Object[]{m,"a",m,"b","c",M,M,e});
+
+ String big = "Now is the time for all good men to come to the aid of their country!";
+ String t = big+big+big+big+big;
+ parse("{'"+t+"':'"+t+"','a':'b'}", new Object[]{m,t,t,"a","b",M,e});
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org