Skip to content

Commit

Permalink
Add trivial unit tests for #81
Browse files Browse the repository at this point in the history
  • Loading branch information
cowtowncoder committed May 14, 2021
1 parent 37f3e7e commit 0acce6b
Show file tree
Hide file tree
Showing 4 changed files with 57 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -36,11 +36,11 @@ protected void verifyException(Throwable e, String... matches)
fail("Expected an exception with one of substrings ("+Arrays.asList(matches)+"): got one with message \""+msg+"\"");
}

protected String quote(String str) {
protected String q(String str) {
return "\"" + str + "\"";
}

protected String aposToQuotes(String json) {
protected String a2q(String json) {
return json.replace("'", "\"");
}

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
package com.fasterxml.jackson.jr.stree;

import com.fasterxml.jackson.core.TreeNode;
import com.fasterxml.jackson.jr.ob.JSON;

public class JrsValueEqualsTest extends JacksonJrTreeTestBase
{
private final JSON treeJSON = jsonWithTreeCodec();

public void testObjectEquality() throws Exception
{
final String INPUT = "{\"a\":1,\"b\":true,\"c\":3}";
TreeNode tree = treeJSON.treeFrom(INPUT);
assertEquals(tree, tree);
assertEquals(tree, treeJSON.treeFrom(INPUT));
assertEquals(treeJSON.treeFrom(INPUT), tree);

final String INPUT2 = "{\"a\":1,\"b\":true}";
TreeNode tree2 = treeJSON.treeFrom(INPUT2);
assertEquals(tree2, tree2);

assertFalse(tree2.equals(tree));
assertFalse(tree.equals(tree2));
}

public void testArrayEquality() throws Exception
{
final String INPUT = "[true,\"abc\"]";
final TreeNode tree = treeJSON.treeFrom(INPUT);
assertEquals(tree, tree);
assertEquals(tree, treeJSON.treeFrom(INPUT));
assertEquals(treeJSON.treeFrom(INPUT), tree);

final String INPUT2 = "[false,\"abc\"]";
final TreeNode tree2 = treeJSON.treeFrom(INPUT2);
assertEquals(tree2, tree2);

assertFalse(tree2.equals(tree));
assertFalse(tree.equals(tree2));
}

public void testScalarEquality() throws Exception
{
assertEquals(treeJSON.treeFrom("12"), treeJSON.treeFrom("12"));
assertFalse(treeJSON.treeFrom("12").equals(treeJSON.treeFrom("-12")));

assertEquals(treeJSON.treeFrom("true"), treeJSON.treeFrom("true"));
assertFalse(treeJSON.treeFrom("true").equals(treeJSON.treeFrom("137")));

assertEquals(treeJSON.treeFrom(q("name")), treeJSON.treeFrom(q("name")));
assertFalse(treeJSON.treeFrom(q("true")).equals(treeJSON.treeFrom("true")));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ public class ReadTreeSequencesTest extends JacksonJrTreeTestBase

public void testBeanSequence() throws Exception
{
final String INPUT = aposToQuotes("{'id':1, 'msg':'foo'} [1, 2, 3] null ");
final String INPUT = a2q("{'id':1, 'msg':'foo'} [1, 2, 3] null ");

// First, managed
ValueIterator<JrsValue> it = treeJSON.treeSequenceFrom(INPUT);
Expand Down
1 change: 1 addition & 0 deletions release-notes/VERSION-2.x
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ Modules:
2.13.0 (not yet released)

#79: Reuse of ClassKey in ValueWriterLocator not working
#81: `JsrValue` should implement `equals()`

2.12.3 (12-Apr-2021)
2.12.2 (03-Mar-2021)
Expand Down

0 comments on commit 0acce6b

Please sign in to comment.