Skip to content

Commit

Permalink
migrate NUnit JsonAssertTests to constraint model
Browse files Browse the repository at this point in the history
  • Loading branch information
matracey committed Jan 22, 2024
1 parent 534a5ae commit 9f29013
Showing 1 changed file with 20 additions and 14 deletions.
34 changes: 20 additions & 14 deletions test/SystemTextJson.JsonDiffPatch.NUnit.Tests/JsonAssertTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ public class JsonAssertTests
[Test]
public void AreEqual_String()
{
var json1 = "{\"foo\":\"bar\",\"baz\":\"qux\"}";
var json2 = "{\"baz\":\"qux\",\"foo\":\"bar\"}";
const string json1 = "{\"foo\":\"bar\",\"baz\":\"qux\"}";
const string json2 = "{\"baz\":\"qux\",\"foo\":\"bar\"}";

JsonAssert.AreEqual(json1, json2);
}
Expand Down Expand Up @@ -43,7 +43,7 @@ public void AreEqual_FailWithMessage()
var error = Assert.Throws<AssertionException>(
() => JsonAssert.AreEqual(json1, json2));

StringAssert.Contains("JsonAssert.AreEqual() failure.", error!.Message);
Assert.That(error!.Message, Does.Contain("JsonAssert.AreEqual() failure."));
}

[Test]
Expand All @@ -55,10 +55,13 @@ public void AreEqual_FailWithDefaultOutput()
var error = Assert.Throws<AssertionException>(
() => JsonAssert.AreEqual(json1, json2, true));

StringAssert.Contains("JsonAssert.AreEqual() failure.", error!.Message);
StringAssert.Contains("Expected:", error.Message);
StringAssert.Contains("Actual:", error.Message);
StringAssert.Contains("Delta:", error.Message);
Assert.Multiple(() =>
{
Assert.That(error!.Message, Does.Contain("JsonAssert.AreEqual() failure."));
Assert.That(error.Message, Does.Contain("Expected:"));
Assert.That(error.Message, Does.Contain("Actual:"));
Assert.That(error.Message, Does.Contain("Delta:"));
});
}

[Test]
Expand All @@ -70,15 +73,18 @@ public void AreEqual_FailWithCustomOutput()
var error = Assert.Throws<AssertionException>(() => JsonAssert.AreEqual(json1,
json2, _ => "Custom message"));

StringAssert.Contains("JsonAssert.AreEqual() failure.", error!.Message);
StringAssert.Contains("Custom message", error.Message);
Assert.Multiple(() =>
{
Assert.That(error!.Message, Does.Contain("JsonAssert.AreEqual() failure."));
Assert.That(error.Message, Does.Contain("Custom message"));
});
}

[Test]
public void AreNotEqual_String()
{
var json1 = "{\"foo\":\"bar\",\"baz\":\"qux\"}";
var json2 = "{\"foo\":\"baz\"}";
const string json1 = "{\"foo\":\"bar\",\"baz\":\"qux\"}";
const string json2 = "{\"foo\":\"baz\"}";

JsonAssert.AreNotEqual(json1, json2);
}
Expand All @@ -100,8 +106,8 @@ public void AreNotEqual_Nulls()

var error = Assert.Throws<AssertionException>(
() => JsonAssert.AreNotEqual(json1, json2));
Assert.IsNotNull(error);

Assert.That(error, Is.Not.Null);
}

[Test]
Expand All @@ -113,7 +119,7 @@ public void AreNotEqual_FailWithMessage()
var error = Assert.Throws<AssertionException>(
() => JsonAssert.AreNotEqual(json1, json2));

StringAssert.Contains("JsonAssert.AreNotEqual() failure.", error!.Message);
Assert.That(error!.Message, Does.Contain("JsonAssert.AreNotEqual() failure."));
}
}
}

0 comments on commit 9f29013

Please sign in to comment.