public void Should_LogErrorMessage() { // Follow the AAA pattern // Arrange: Set up data for the test. var errorWrittenOut = false; var errorMessage = "errorMsg"; var errorException = new Exception(); var loggerListenerMock = new Mock <ILoggerListener>(); loggerListenerMock.Setup(loggerListener => loggerListener.Error(errorMessage, errorException)).Callback(delegate { errorWrittenOut = true; }); AppioLogger.RegisterListener(loggerListenerMock.Object); // Act: Perform the action of the test. AppioLogger.Error(errorMessage, errorException); // Assert: Verify the result of the test. Assert.IsTrue(errorWrittenOut); CleanupAppioLogger(); }