Interaction-based testing
To ensure decoupling, this should only be done when testing external dependencies
[TextFixture]
public class TestClass
{
[SetUp]
public void SetUp()
{
var classToMock = new Mock<IFileReader>();
var service = new Service(classToMock.Object);
}
[Test]
public void MethodName_SenarioName_ExpectedBehaviour()
{
// Arrange
// Act
var result = service.DoWork();
// Assert
// Verifys if the method is called with specified arguments
classToMock.Verify(c => c.MethodToVerify("expected args"));
}
}