Skip to content

Commit b4bbc58

Browse files
committed
Refactor JSONPointerTest
1 parent d284c81 commit b4bbc58

1 file changed

Lines changed: 23 additions & 24 deletions

File tree

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

Lines changed: 23 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,10 @@ of this software and associated documentation files (the "Software"), to deal
4141
public class JSONPointerTest {
4242

4343
private static final JSONObject document;
44+
private static final String EXPECTED_COMPLETE_DOCUMENT = "{\"\":0,\" \":7,\"g|h\":4,\"c%d\":2,\"k\\\"l\":6,\"a/b\":1,\"i\\\\j\":5," +
45+
"\"obj\":{\"\":{\"\":\"empty key of an object with an empty key\",\"subKey\":\"Some other value\"}," +
46+
"\"other~key\":{\"another/key\":[\"val\"]},\"key\":\"value\"},\"foo\":[\"bar\",\"baz\"],\"e^f\":3," +
47+
"\"m~n\":8}";
4448

4549
static {
4650
@SuppressWarnings("resource")
@@ -57,7 +61,7 @@ private Object query(String pointer) {
5761

5862
@Test
5963
public void emptyPointer() {
60-
assertSame(document, query(""));
64+
assertEquals(EXPECTED_COMPLETE_DOCUMENT, query("").toString());
6165
}
6266

6367
@SuppressWarnings("unused")
@@ -68,12 +72,12 @@ public void nullPointer() {
6872

6973
@Test
7074
public void objectPropertyQuery() {
71-
assertSame(document.get("foo"), query("/foo"));
75+
assertEquals("[\"bar\",\"baz\"]", query("/foo").toString());
7276
}
7377

7478
@Test
7579
public void arrayIndexQuery() {
76-
assertSame(document.getJSONArray("foo").get(0), query("/foo/0"));
80+
assertEquals("bar", query("/foo/0"));
7781
}
7882

7983
@Test(expected = JSONPointerException.class)
@@ -83,38 +87,33 @@ public void stringPropOfArrayFailure() {
8387

8488
@Test
8589
public void queryByEmptyKey() {
86-
assertSame(document.get(""), query("/"));
90+
assertEquals(0, query("/"));
8791
}
8892

8993
@Test
9094
public void queryByEmptyKeySubObject() {
91-
assertSame(document.getJSONObject("obj").getJSONObject(""), query("/obj/"));
95+
assertEquals( "{\"\":\"empty key of an object with an empty key\",\"subKey\":\"Some" +
96+
" other value\"}", query("/obj/").toString());
9297
}
9398

9499
@Test
95100
public void queryByEmptyKeySubObjectSubOject() {
96-
assertSame(
97-
document.getJSONObject("obj").getJSONObject("").get(""),
98-
query("/obj//")
99-
);
101+
assertEquals("empty key of an object with an empty key", query("/obj//"));
100102
}
101103

102104
@Test
103105
public void queryByEmptyKeySubObjectValue() {
104-
assertSame(
105-
document.getJSONObject("obj").getJSONObject("").get("subKey"),
106-
query("/obj//subKey")
107-
);
106+
assertEquals("Some other value", query("/obj//subKey"));
108107
}
109108

110109
@Test
111110
public void slashEscaping() {
112-
assertSame(document.get("a/b"), query("/a~1b"));
111+
assertEquals(1, query("/a~1b"));
113112
}
114113

115114
@Test
116115
public void tildeEscaping() {
117-
assertSame(document.get("m~n"), query("/m~0n"));
116+
assertEquals(8, query("/m~0n"));
118117
}
119118

120119
/**
@@ -124,7 +123,7 @@ public void tildeEscaping() {
124123
*/
125124
@Test
126125
public void backslashHandling() {
127-
assertSame(document.get("i\\j"), query("/i\\j"));
126+
assertEquals(5, query("/i\\j"));
128127
}
129128

130129
/**
@@ -134,30 +133,30 @@ public void backslashHandling() {
134133
*/
135134
@Test
136135
public void quotationHandling() {
137-
assertSame(document.get("k\"l"), query("/k\"l"));
136+
assertEquals(6, query("/k\"l"));
138137
}
139138

140139
@Test
141140
public void whitespaceKey() {
142-
assertSame(document.get(" "), query("/ "));
141+
assertEquals(7, query("/ "));
143142
}
144143

145144
@Test
146145
public void uriFragmentNotation() {
147-
assertSame(document.get("foo"), query("#/foo"));
146+
assertEquals("[\"bar\",\"baz\"]", query("#/foo").toString());
148147
}
149148

150149
@Test
151150
public void uriFragmentNotationRoot() {
152-
assertSame(document, query("#"));
151+
assertEquals(EXPECTED_COMPLETE_DOCUMENT, query("#").toString());
153152
}
154153

155154
@Test
156155
public void uriFragmentPercentHandling() {
157-
assertSame(document.get("c%d"), query("#/c%25d"));
158-
assertSame(document.get("e^f"), query("#/e%5Ef"));
159-
assertSame(document.get("g|h"), query("#/g%7Ch"));
160-
assertSame(document.get("m~n"), query("#/m~0n"));
156+
assertEquals(2, query("#/c%25d"));
157+
assertEquals(3, query("#/e%5Ef"));
158+
assertEquals(4, query("#/g%7Ch"));
159+
assertEquals(8, query("#/m~0n"));
161160
}
162161

163162
@SuppressWarnings("unused")

0 commit comments

Comments
 (0)