anchor.diff:      });
   
       test("Can deserialize objects with circular references", () {
  -      var json =
  -          new io.File.fromUri(new Uri.file("test/test_json/hashcode_test.json"))
  -              .readAsStringSync();
  +      var json = r'''{
  +  "$type": "nomirrorsmap.tests.Person",
  +  "$hashcode": "547833245",
  +  "id": 3,
  +  "parents": [{
  +    "$type": "nomirrorsmap.tests.Person",
  +    "$hashcode": "48854486",
  +    "id": 1,
  +    "parents": [],
  +    "children": [{
  +      "$type": "nomirrorsmap.tests.Person",
  +      "$hashcode": "48854487",
  +      "id": 2,
  +      "parents": [{
  +        "$type": "nomirrorsmap.tests.Person",
  +        "$hashcode": "48854486"
  +      }],
  +      "children": []
  +    }]
  +  }],
  +  "children": []
  +}''';
   
         var result = new NoMirrorsMap()
             .convert(json, new JsonConverter(), new ClassConverter()) as Person;
  
positive.code:     test(
          "Can deserialize objects with circular references, even if properties are seen after reference",
          () {
        var json = new io.File.fromUri(
                new Uri.file("test/test_json/reversed_hashcode_json.json"))
            .readAsStringSync();
  
        var result = new NoMirrorsMap()
            .convert(json, new JsonConverter(), new ClassConverter()) as Person;
  
negative.code:     });
  
      test("Can deserialize simple object structure", () {
        var json = r'''{
    "$type": "nomirrorsmap.tests.Person",
    "$hashcode": "547833245",
    "id": 1,
    "parents": [],
    "children": []
  }''';
  
        var result = new NoMirrorsMap()
            .convert(json, new JsonConverter(), new ClassConverter()) as Person;
  