Skip to content

Commit

Permalink
Convert NUnit Classic Assert to the Constraint model
Browse files Browse the repository at this point in the history
Add package reference NUnit.Analyzers
  • Loading branch information
axunonb committed Apr 1, 2024
1 parent 3f308dc commit 1993bf6
Show file tree
Hide file tree
Showing 11 changed files with 111 additions and 113 deletions.
6 changes: 3 additions & 3 deletions YAXLibTests/CustomTypeInspectorTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -43,15 +43,15 @@ public void SkipPublishYearPropertySerializationTest()

var result = serializer.Serialize(Book.GetSampleInstance());

Assert.AreEqual(
"""
Assert.That(
result, Is.EqualTo("""
<!-- This example demonstrates serializing a very simple class -->
<Book>
<Title>Inside C#</Title>
<Author>Tom Archer &amp; Andrew Whitechapel</Author>
<Price>30.5</Price>
</Book>
""", result);
"""));
}

[Test]
Expand Down
28 changes: 11 additions & 17 deletions YAXLibTests/DeserializationTestBase.cs
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,8 @@ private void PerformTest(object obj)
private void PerformTestWithEquals(object obj)
{
var serializer = SerializeDeserialize(obj, out var gottonObject);
Assert.AreEqual(0, serializer.ParsingErrors.Count);
Assert.AreEqual(obj, gottonObject);
Assert.That(serializer.ParsingErrors.Count, Is.EqualTo(0));
Assert.That(gottonObject, Is.EqualTo(obj));
}

private object? GetTheTwoStringsAndReturn(object obj, out string originalString, out string? gottonString,
Expand Down Expand Up @@ -371,7 +371,7 @@ public void MoreComplexBookTwoResumedDeserializationTest()
{ ExceptionHandlingPolicies = YAXExceptionHandlingPolicies.DoNotThrow });
serializer.SetDeserializationBaseObject(book);
var bookResult = (MoreComplexBook2?) serializer.Deserialize(result);
Assert.AreNotEqual(bookResult?.ToString(), initialToString);
Assert.That(bookResult?.ToString(), Is.Not.EqualTo(initialToString));
}

[Test]
Expand Down Expand Up @@ -531,11 +531,8 @@ public void AttributeForKeyInDictionaryPropertyTest()

var deserializedContainer = (DictionaryContainerSample?) ser.Deserialize(input);

Assert.IsNotNull(deserializedContainer?.Items);
Assert.IsTrue(deserializedContainer?.Items.Count == container.Items.Count,
"Expected Count: {0}. Actual Count: {1}",
container.Items.Count,
deserializedContainer?.Items.Count);
Assert.That(deserializedContainer?.Items, Is.Not.Null);
Assert.That(deserializedContainer?.Items.Count == container.Items.Count, $"Expected Count: {container.Items.Count}. Actual Count: {deserializedContainer?.Items.Count}");
}

[Test]
Expand All @@ -550,10 +547,7 @@ public void DeserializingADictionaryDerivedInstance()
var deserializedInstance = (DictionarySample?) ser.Deserialize(input);

Assert.That(deserializedInstance, Is.Not.Null);
Assert.IsTrue(deserializedInstance?.Count == inst.Count,
"Expected Count: {0}. Actual Count: {1}",
inst.Count,
deserializedInstance?.Count);
Assert.That(deserializedInstance?.Count == inst.Count, $"Expected Count: {inst.Count}. Actual Count: {deserializedInstance?.Count}");
}

[Test]
Expand Down Expand Up @@ -620,7 +614,7 @@ public void DeserializeIndirectSelfReferringObjectWhenThrowUponSerializingCyclin
var deserializedInstance = (IndirectSelfReferringObject?) ser.Deserialize(input);

Assert.That(deserializedInstance, Is.Not.Null);
Assert.IsNull(deserializedInstance?.Child?.Parent);
Assert.That(deserializedInstance?.Child?.Parent, Is.Null);
}

[Test]
Expand All @@ -638,7 +632,7 @@ public void DeserializeDirectSelfReferringObjectWhenDontThrowUponSerializingCycl
var deserializedInstance = (DirectSelfReferringObject?) ser.Deserialize(input);

Assert.That(deserializedInstance, Is.Not.Null);
Assert.IsNull(deserializedInstance?.Next?.Next);
Assert.That(deserializedInstance?.Next?.Next, Is.Null);
}

[Test]
Expand All @@ -656,7 +650,7 @@ public void DeserializeDirectSelfReferringObjectWithSelfCycleWhenThrowUponSerial
var deserializedInstance = (DirectSelfReferringObject?) ser.Deserialize(input);

Assert.That(deserializedInstance, Is.Not.Null);
Assert.IsNull(deserializedInstance?.Next);
Assert.That(deserializedInstance?.Next, Is.Null);
}

[Test]
Expand All @@ -670,7 +664,7 @@ public void
var result = ser.Serialize(CalculatedPropertiesCanCauseInfiniteLoop.GetSampleInstance());

var deserializedInstance = ser.Deserialize(result);
Assert.IsNotNull(deserializedInstance);
Assert.That(deserializedInstance, Is.Not.Null);
}

[Test]
Expand All @@ -680,7 +674,7 @@ public void MaxRecursionPreventsInfiniteLoop()
var ser = CreateSerializer<CalculatedPropertiesCanCauseInfiniteLoop>(options);
var result = ser.Serialize(CalculatedPropertiesCanCauseInfiniteLoop.GetSampleInstance());
var deserializedInstance = ser.Deserialize(result) as CalculatedPropertiesCanCauseInfiniteLoop;
Assert.IsNotNull(deserializedInstance);
Assert.That(deserializedInstance, Is.Not.Null);
Assert.That(ser.Options.MaxRecursion, Is.EqualTo(10));
Assert.That(deserializedInstance?.Data, Is.EqualTo(2.0M));
Assert.That(ser.GetRecursionCount(), Is.EqualTo(0));
Expand Down
84 changes: 42 additions & 42 deletions YAXLibTests/ExceptionTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ public void AttributeAlreadyExistsExceptionTest()
serializer.Serialize(ClassWithDuplicateYaxAttribute.GetSampleInstance());
});

Assert.AreEqual("test", ex?.AttrName);
StringAssert.Contains("'test'", ex?.Message);
Assert.That(ex?.AttrName, Is.EqualTo("test"));
Assert.That(ex?.Message, Does.Contain("'test'"));
}

[Test]
Expand All @@ -54,7 +54,7 @@ public void MalformedXmlStringThatThrows()
});

// YAXBadlyFormedXML exception doesn't need YAXSerializationOptions.DisplayLineInfoInExceptions to get the line numbers
Assert.True(ex!.HasLineInfo);
Assert.That(ex!.HasLineInfo, Is.True);
Assert.That(ex.LineNumber, Is.EqualTo(7));
Assert.That(ex.LinePosition, Is.EqualTo(3));
Assert.That(ex.Message, Does.Contain("not properly formatted"));
Expand Down Expand Up @@ -194,10 +194,10 @@ public void MalformedInputWithLineNumbersTest()
});
serializer.Deserialize(bookXml);
});
Assert.True(ex?.HasLineInfo);
Assert.AreEqual(6, ex?.LineNumber);
Assert.AreEqual(4, ex?.LinePosition);
StringAssert.Contains("The format of the value specified for the property", ex?.Message);
Assert.That(ex?.HasLineInfo, Is.True);
Assert.That(ex?.LineNumber, Is.EqualTo(6));
Assert.That(ex?.LinePosition, Is.EqualTo(4));
Assert.That(ex?.Message, Does.Contain("The format of the value specified for the property"));
}

[Test]
Expand All @@ -222,10 +222,10 @@ public void MalformedInputWithoutLineNumbersTest()
});
serializer.Deserialize(bookXml);
});
Assert.False(ex?.HasLineInfo);
Assert.AreEqual(0, ex?.LineNumber);
Assert.AreEqual(0, ex?.LinePosition);
StringAssert.Contains("The format of the value specified for the property", ex?.Message);
Assert.That(ex?.HasLineInfo, Is.False);
Assert.That(ex?.LineNumber, Is.EqualTo(0));
Assert.That(ex?.LinePosition, Is.EqualTo(0));
Assert.That(ex?.Message, Does.Contain("The format of the value specified for the property"));
}

[Test]
Expand All @@ -239,10 +239,10 @@ public void ObjectTypeMismatchExceptionTest()
serializer.Serialize(new ClassWithDuplicateYaxAttribute());
});

Assert.AreEqual(typeof(Book), ex?.ExpectedType);
Assert.AreEqual(typeof(ClassWithDuplicateYaxAttribute), ex?.ReceivedType);
StringAssert.Contains("'Book'", ex?.Message);
StringAssert.Contains("'ClassWithDuplicateYaxAttribute'", ex?.Message);
Assert.That(ex?.ExpectedType, Is.EqualTo(typeof(Book)));
Assert.That(ex?.ReceivedType, Is.EqualTo(typeof(ClassWithDuplicateYaxAttribute)));
Assert.That(ex?.Message, Does.Contain("'Book'"));
Assert.That(ex?.Message, Does.Contain("'ClassWithDuplicateYaxAttribute'"));
}


Expand All @@ -268,9 +268,9 @@ public void ElementValueMissingWithLineNumbersTest()
});
serializer.Deserialize(bookXml);
});
Assert.True(ex?.HasLineInfo);
Assert.AreEqual(2, ex?.LineNumber);
Assert.AreEqual(2, ex?.LinePosition);
Assert.That(ex?.HasLineInfo, Is.True);
Assert.That(ex?.LineNumber, Is.EqualTo(2));
Assert.That(ex?.LinePosition, Is.EqualTo(2));
}

[Test]
Expand All @@ -296,9 +296,9 @@ public void ElementMissingWithLineNumbersTest()
});
serializer.Deserialize(collectionXml);
});
Assert.True(ex?.HasLineInfo);
Assert.AreEqual(2, ex?.LineNumber);
Assert.AreEqual(2, ex?.LinePosition);
Assert.That(ex?.HasLineInfo, Is.True);
Assert.That(ex?.LineNumber, Is.EqualTo(2));
Assert.That(ex?.LinePosition, Is.EqualTo(2));
}

[Test]
Expand All @@ -322,9 +322,9 @@ public void DefaultValueCannotBeAssignedWithLineNumbersTest()
});
serializer.Deserialize(bookXml);
});
Assert.True(ex?.HasLineInfo);
Assert.AreEqual(1, ex?.LineNumber);
Assert.AreEqual(2, ex?.LinePosition);
Assert.That(ex?.HasLineInfo, Is.True);
Assert.That(ex?.LineNumber, Is.EqualTo(1));
Assert.That(ex?.LinePosition, Is.EqualTo(2));
}

[Test]
Expand All @@ -334,7 +334,7 @@ public void BadLocationExceptionLegacyConstructor()

Exception? ex =
Assert.Throws<YAXBadLocationException>(code: () => throw new YAXBadLocationException(testName));
StringAssert.Contains(testName, ex?.Message);
Assert.That(ex?.Message, Does.Contain(testName));
}

[Test]
Expand All @@ -343,7 +343,7 @@ public void AttributeAlreadyExistsExceptionLegacyConstructor()
var testName = "Test";
var ex = Assert.Throws<YAXAttributeAlreadyExistsException>(code: () =>
throw new YAXAttributeAlreadyExistsException(testName));
StringAssert.Contains(testName, ex?.Message);
Assert.That(ex?.Message, Does.Contain(testName));
}

[Test]
Expand All @@ -352,7 +352,7 @@ public void AttributeMissingExceptionLegacyConstructor()
var testName = "Test";
var ex = Assert.Throws<YAXAttributeMissingException>(code: () =>
throw new YAXAttributeMissingException(testName));
StringAssert.Contains(testName, ex?.Message);
Assert.That(ex?.Message, Does.Contain(testName));
}

[Test]
Expand All @@ -361,7 +361,7 @@ public void ElementValueMissingExceptionLegacyConstructor()
var testName = "Test";
var ex = Assert.Throws<YAXElementValueMissingException>(code: () =>
throw new YAXElementValueMissingException(testName));
StringAssert.Contains(testName, ex?.Message);
Assert.That(ex?.Message, Does.Contain(testName));
}

[Test]
Expand All @@ -370,7 +370,7 @@ public void ElementMissingExceptionLegacyConstructor()
var testName = "Test";
var ex = Assert.Throws<YAXElementMissingException>(code: () =>
throw new YAXElementMissingException(testName));
StringAssert.Contains(testName, ex?.Message);
Assert.That(ex?.Message, Does.Contain(testName));
}

[Test]
Expand All @@ -380,8 +380,8 @@ public void MalformedInputLegacyConstructor()
var testInput = "BadInput";
var ex = Assert.Throws<YAXBadlyFormedInput>(code: () =>
throw new YAXBadlyFormedInput(testName, testInput));
StringAssert.Contains(testName, ex?.Message);
StringAssert.Contains(testInput, ex?.Message);
Assert.That(ex?.Message, Does.Contain(testName));
Assert.That(ex?.Message, Does.Contain(testInput));
}

[Test]
Expand All @@ -390,7 +390,7 @@ public void PropertyCannotBeAssignedToLegacyConstructor()
var testName = "Test";
var ex = Assert.Throws<YAXPropertyCannotBeAssignedTo>(code: () =>
throw new YAXPropertyCannotBeAssignedTo(testName));
StringAssert.Contains(testName, ex?.Message);
Assert.That(ex?.Message, Does.Contain(testName));
}

[Test]
Expand All @@ -400,8 +400,8 @@ public void CannotAddObjectToCollectionLegacyConstructor()
var testValue = 1;
var ex = Assert.Throws<YAXCannotAddObjectToCollection>(code: () =>
throw new YAXCannotAddObjectToCollection(testName, testValue));
StringAssert.Contains(testName, ex?.Message);
StringAssert.Contains(testValue.ToString(), ex?.Message);
Assert.That(ex?.Message, Does.Contain(testName));
Assert.That(ex?.Message, Does.Contain(testValue.ToString()));
}

[Test]
Expand All @@ -411,16 +411,16 @@ public void DefaultValueCannotBeAssignedLegacyConstructor()
var testValue = 1;
var ex = Assert.Throws<YAXDefaultValueCannotBeAssigned>(code: () =>
throw new YAXDefaultValueCannotBeAssigned(testName, testValue, CultureInfo.InvariantCulture));
StringAssert.Contains(testName, ex?.Message);
StringAssert.Contains(testValue.ToString(), ex?.Message);
Assert.That(ex?.Message, Does.Contain(testName));
Assert.That(ex?.Message, Does.Contain(testValue.ToString()));
}

[Test]
public void MalformedXmlLegacyConstructor()
{
var testName = "Test";
var ex = Assert.Throws<YAXBadlyFormedXML>(() => { throw new YAXBadlyFormedXML(new Exception(testName)); });
StringAssert.Contains(testName, ex?.Message);
Assert.That(ex?.Message, Does.Contain(testName));
}

[Test]
Expand All @@ -429,7 +429,7 @@ public void CannotSerializeSelfReferentialTypesLegacyConstructor()
var testType = typeof(string);
var ex = Assert.Throws<YAXCannotSerializeSelfReferentialTypes>(code: () =>
throw new YAXCannotSerializeSelfReferentialTypes(testType));
StringAssert.Contains(testType.Name, ex?.Message);
Assert.That(ex?.Message, Does.Contain(testType.Name));
}

[Test]
Expand All @@ -439,15 +439,15 @@ public void ObjectTypeMismatchLegacyConstructor()
var testType2 = typeof(int);
var ex = Assert.Throws<YAXObjectTypeMismatch>(code: () =>
throw new YAXObjectTypeMismatch(testType, testType2));
StringAssert.Contains(testType.Name, ex?.Message);
StringAssert.Contains(testType2.Name, ex?.Message);
Assert.That(ex?.Message, Does.Contain(testType.Name));
Assert.That(ex?.Message, Does.Contain(testType2.Name));
}

[Test]
public void PolymorphicExceptionLegacyConstructor()
{
var testName = "Test";
var ex = Assert.Throws<YAXPolymorphicException>(code: () => throw new YAXPolymorphicException(testName));
StringAssert.Contains(testName, ex?.Message);
Assert.That(ex?.Message, Does.Contain(testName));
}
}
}
6 changes: 3 additions & 3 deletions YAXLibTests/GenericDeserializationTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ public void GenericDeserializationTest()
""";
var serializer = new YAXSerializer<Book>();
var got = serializer.Deserialize(xml);
Assert.NotNull(got);
Assert.AreEqual(got, Book.GetSampleInstance());
Assert.That(got, Is.Not.Null);
Assert.That(Book.GetSampleInstance(), Is.EqualTo(got));
}
}
}
4 changes: 2 additions & 2 deletions YAXLibTests/GenericSerializationTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ public void GenericDeserializationTest()
""";
var serializer = new YAXSerializer<Book>();
var got = serializer.Deserialize(xml);
Assert.NotNull(got);
Assert.AreEqual(got, Book.GetSampleInstance());
Assert.That(got, Is.Not.Null);
Assert.That(Book.GetSampleInstance(), Is.EqualTo(got));
}
}
Loading

0 comments on commit 1993bf6

Please sign in to comment.