public void EqualWithDummies()
 {
     var expected = new WithDummy { Dummy = new Dummy { Value = 2 } };
     var actual = new WithDummy { Dummy = new Dummy { Value = 2 } };
     JsonSerializerAssert.Equal(expected, actual);
     JsonSerializerAssert.Equal(expected, actual, this.serializerSettings);
 }
 public void WithDummy()
 {
     var actual = new WithDummy { Dummy = new Dummy { Value = 2 } };
     var roundtrips = new[]
                          {
                              JsonSerializerAssert.Roundtrip(actual),
                              JsonSerializerAssert.Roundtrip(actual, this.serializerSettings),
                          };
     foreach (var roundtrip in roundtrips)
     {
         Assert.AreNotSame(actual, roundtrip);
         Assert.AreEqual(2, actual.Dummy.Value);
         Assert.AreEqual(2, roundtrip.Dummy.Value);
     }
 }
            public void WithDummy()
            {
                var actual = new WithDummy { Dummy = new Dummy { Value = 2 } };
                var expectedJson = "{ Dummy: {\"Value\":2}}";

                var roundtrips = new[]
                                     {
                                         JsonSerializerAssert.Equal(expectedJson, actual),
                                         JsonSerializerAssert.Equal(expectedJson, actual, JsonAssertOptions.Default),
                                         JsonSerializerAssert.Equal(expectedJson, actual, JsonAssertOptions.Verbatim),
                                         JsonSerializerAssert.Equal(expectedJson, actual, this.serializerSettings, JsonAssertOptions.Verbatim),
                                     };
                foreach (var roundtrip in roundtrips)
                {
                    Assert.AreNotSame(actual, roundtrip);
                    Assert.AreEqual(2, roundtrip.Dummy.Value);
                }
            }
            public void NotEqualWithDummies()
            {
                var expected = new WithDummy { Dummy = new Dummy { Value = 1 } };
                var actual = new WithDummy { Dummy = new Dummy { Value = 2 } };

                var exceptions = new[]
                                    {
                                       Assert.Throws<AssertException>(() => JsonSerializerAssert.Equal(expected, actual)),
                                       Assert.Throws<AssertException>(() => JsonSerializerAssert.Equal(expected, actual, this.serializerSettings)),
                                    };
                var expectedMessage = "  Json differ at line 1 index 18.\r\n" +
                                      "  Expected: 1| {\"Dummy\":{\"Value\":1}}\r\n" +
                                      "  But was:  1| {\"Dummy\":{\"Value\":2}}\r\n" +
                                      "  -------------------------------^";
                foreach (var exception in exceptions)
                {
                    Assert.AreEqual(expectedMessage, exception.Message);
                }
            }