Skip to content

Commit c3ba4bd

Browse files
committed
Nesting depth test works as expected.
1 parent 71c1eba commit c3ba4bd

File tree

1 file changed

+50
-9
lines changed

1 file changed

+50
-9
lines changed

src/test/java/org/json/junit/JSONStringerTest.java

Lines changed: 50 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public void nullKeyException() {
2727
jsonStringer.key(null);
2828
assertTrue("Expected an exception", false);
2929
} catch (JSONException e) {
30-
assertTrue("Expected an exception message",
30+
assertTrue("Expected an exception message",
3131
"Null key.".
3232
equals(e.getMessage()));
3333
}
@@ -44,7 +44,7 @@ public void outOfSequenceException() {
4444
jsonStringer.key("hi");
4545
assertTrue("Expected an exception", false);
4646
} catch (JSONException e) {
47-
assertTrue("Expected an exception message",
47+
assertTrue("Expected an exception message",
4848
"Misplaced key.".
4949
equals(e.getMessage()));
5050
}
@@ -61,7 +61,7 @@ public void missplacedArrayException() {
6161
try {
6262
jsonStringer.array();
6363
} catch (JSONException e) {
64-
assertTrue("Expected an exception message",
64+
assertTrue("Expected an exception message",
6565
"Misplaced array.".
6666
equals(e.getMessage()));
6767
}
@@ -78,7 +78,7 @@ public void missplacedEndArrayException() {
7878
try {
7979
jsonStringer.endArray();
8080
} catch (JSONException e) {
81-
assertTrue("Expected an exception message",
81+
assertTrue("Expected an exception message",
8282
"Misplaced endArray.".
8383
equals(e.getMessage()));
8484
}
@@ -95,7 +95,7 @@ public void missplacedEndObjectException() {
9595
try {
9696
jsonStringer.endObject();
9797
} catch (JSONException e) {
98-
assertTrue("Expected an exception message",
98+
assertTrue("Expected an exception message",
9999
"Misplaced endObject.".
100100
equals(e.getMessage()));
101101
}
@@ -112,7 +112,7 @@ public void missplacedObjectException() {
112112
try {
113113
jsonStringer.object();
114114
} catch (JSONException e) {
115-
assertTrue("Expected an exception message",
115+
assertTrue("Expected an exception message",
116116
"Misplaced object.".
117117
equals(e.getMessage()));
118118
}
@@ -125,7 +125,47 @@ public void missplacedObjectException() {
125125
@Test
126126
public void exceedNestDepthException() {
127127
try {
128-
new JSONStringer().object().
128+
JSONStringer s = new JSONStringer();
129+
s.object().
130+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
131+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
132+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
133+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
134+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
135+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
136+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
137+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
138+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
139+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
140+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
141+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
142+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
143+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
144+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
145+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
146+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
147+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
148+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
149+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
150+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
151+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
152+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
153+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
154+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
155+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
156+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
157+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
158+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
159+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
160+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
161+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
162+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
163+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
164+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
165+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
166+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
167+
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object();
168+
s.key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
129169
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
130170
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
131171
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
@@ -165,9 +205,10 @@ public void exceedNestDepthException() {
165205
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
166206
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object().
167207
key("k").object().key("k").object().key("k").object().key("k").object().key("k").object();
208+
fail("Expected an exception message");
168209
} catch (JSONException e) {
169-
assertTrue("Expected an exception message",
170-
"".
210+
assertTrue("Expected an exception message",
211+
"Nesting too deep.".
171212
equals(e.getMessage()));
172213
}
173214
}

0 commit comments

Comments
 (0)