[TextFixture]
public class TestClass
{
[Test]
public void MethodName_SenarioName_ExpectedBehaviour()
{
// Arrange
// Act
var result = AddStrong.AddStrong("abc");
// Assert
Assert.That(result, Is.EqualTo("<strong>abc</strong>"));
// or, for a more general asserts
// best used for non critical cases like exception messages
Assert.That(result, Does.StartWith("<strong>"));
Assert.That(result, Does.Contain("abc"));
Assert.That(result, Does.EndsWith("</strong>"));
}
}
Arrays
[TextFixture]
public class TestClass
{
[Test]
public void MethodName_SenarioName_ExpectedBehaviour()
{
// Arrange
// Act
var OddNums = C.OddNumbers(5); // setting our limit to 5
// Assert
Assert.That(result, Is.Not.Empty);
Assert.That(result.count, Is.EqualTo(3));
Assert.That(result, Does.Contain(1));
Assert.That(result, Does.Contain(3));
Assert.That(result, Does.Contain(5));
Assert.That(result, Is.EquivalentTo(new [] {1, 3, 5});
Assert.That(result, Is.Ordered);
Assert.That(result, Is.Unique);
}
}
Handling Types (ASP.Net)
[TextFixture]
public class TestClass
{
[Test]
public void MethodName_SenarioName_ExpectedBehaviour()
{
// We are gonna test a controller that returns an IActionResult
// Thus it can return OK or NotFound
// Arrange
var controller = new ControllerName();
// Act
var result = controller.GetCustomer(0);
// Assert
Assert.That(result, Is.TypeOf<NotFound>());
Assert.That(result, Is.InstanceOf<NotFound>()); // can be a child of not found
}
}