public void ShouldThrowOnExceptionUsingCustomException() { TryAction t; MockedLogger logger; logger = new MockedLogger(); t = new TryAction(logger, 1, "TestUnit", "TestMethod", () => throw new InvalidCastException("Failure")); Assert.ThrowsException <InvalidOperationException>(() => t.OrThrow((Ex, ComponentID, ComponentName, MethodName) => new InvalidOperationException("Failure", Ex))); Assert.AreEqual(1, logger.Logs.Count); }
public void ShouldThrowOnException() { TryAction t; MockedLogger logger; logger = new MockedLogger(); t = new TryAction(logger, 1, "TestUnit", "TestMethod", () => throw new InvalidCastException("Failure")); Assert.ThrowsException <TryException>(() => t.OrThrow("Failure")); Assert.AreEqual(1, logger.Logs.Count); }
public void ShouldWarnOnExceptionUsingCustomFormat() { TryAction t; MockedLogger logger; logger = new MockedLogger(); t = new TryAction(logger, 1, "TestUnit", "TestMethod", () => throw new InvalidCastException("Failure")); Assert.AreEqual(false, t.OrWarn((Ex) => "Formatted Failure")); Assert.AreEqual(1, logger.Logs.Count); Assert.AreEqual("Warning: Formatted Failure", logger.Logs[0]); }
public void ShouldAlertOnException() { TryAction t; MockedLogger logger; logger = new MockedLogger(); t = new TryAction(logger, 1, "TestUnit", "TestMethod", () => throw new InvalidCastException("Failure")); Assert.AreEqual(false, t.OrAlert("Failure message")); Assert.AreEqual(1, logger.Logs.Count); Assert.AreEqual("Error: Failure message: ->Failure", logger.Logs[0]); }
public void ShouldThrowOnExceptionUsingCustomGenericException() { TryFunction <int> t; MockedLogger logger; int result; logger = new MockedLogger(); t = new TryFunction <int>(logger, 1, "TestUnit", "TestMethod", () => throw new InvalidCastException("Failure")); Assert.ThrowsException <TestException>(() => result = t.OrThrow <TestException>("Failure")); Assert.AreEqual(1, logger.Logs.Count); }
public void ShouldSuccess() { TryAction t; MockedLogger logger; logger = new MockedLogger(); t = new TryAction(logger, 1, "TestUnit", "TestMethod", () => { }); t.OrThrow("Failure"); Assert.AreEqual(0, logger.Logs.Count); Assert.AreEqual(true, t.OrAlert("Failure")); Assert.AreEqual(0, logger.Logs.Count); }
public void ShouldWarnOnException() { TryFunction <int> t; MockedLogger logger; int result; logger = new MockedLogger(); t = new TryFunction <int>(logger, 1, "TestUnit", "TestMethod", () => throw new InvalidCastException("Failure")); Assert.AreEqual(false, t.OrWarn(out result, "Failure message")); Assert.AreEqual(0, result); Assert.AreEqual(1, logger.Logs.Count); Assert.AreEqual("Warning: Failure message: ->Failure", logger.Logs[0]); }
public void ShouldAlertOnExceptionUsingCustomFormat() { TryFunction <int> t; MockedLogger logger; int result; logger = new MockedLogger(); t = new TryFunction <int>(logger, 1, "TestUnit", "TestMethod", () => throw new InvalidCastException("Failure")); Assert.AreEqual(false, t.OrAlert(out result, (Ex) => "Formatted Failure")); Assert.AreEqual(0, result); Assert.AreEqual(1, logger.Logs.Count); Assert.AreEqual("Error: Formatted Failure", logger.Logs[0]); }
public void ShouldLogErrorWhenAuthenticatorThrows() { MockedUnfinishedPackageGetter.Setup(ufg => ufg.GetUnfinishedPackages(It.IsAny <string>(), It.IsAny <IEnumerable <string> >())).Throws(new Exception()); try { PackageService.GetUnfinished(Guid.NewGuid().ToString(), new[] { "Foo", "Bar" }); } catch (WebFaultException <string> ) { } MockedLogger.Verify(l => l.Error(It.IsAny <Exception>(), It.IsAny <string>(), It.IsAny <string>()), Times.Once(), "An error should have been logged."); }
public void ShouldSuccess() { TryFunction <int> t; MockedLogger logger; int result; logger = new MockedLogger(); t = new TryFunction <int>(logger, 1, "TestUnit", "TestMethod", () => 1234); Assert.AreEqual(1234, t.OrThrow("Failure")); Assert.AreEqual(0, logger.Logs.Count); Assert.AreEqual(true, t.OrAlert(out result, "Failure")); Assert.AreEqual(1234, result); Assert.AreEqual(0, logger.Logs.Count); }
public async Task LogsTrace() { MockedLogger mockedLogger = new MockedLogger(); MockedLease lease = new MockedLease(); CosmosDBTriggerHealthMonitor cosmosDBTriggerHealthMonitor = new CosmosDBTriggerHealthMonitor(mockedLogger); await cosmosDBTriggerHealthMonitor.InspectAsync(new HealthMonitoringRecord(HealthSeverity.Informational, MonitoredOperation.AcquireLease, lease, null)); Assert.Single(mockedLogger.Events); LogEvent loggedEvent = mockedLogger.Events[0]; Assert.Equal(LogLevel.Trace, loggedEvent.LogLevel); Assert.True(loggedEvent.Message.Contains(lease.ToString()) && loggedEvent.Message.Contains(MonitoredOperation.AcquireLease.ToString())); }
public void TestTaskManager_WhenAddTask_ShouldCallLog() { //Arrange var mockedLogger = new MockedLogger(); var mockedIdProvider = new MockedIdProvider(); var taskManager = new Tasker(mockedLogger, mockedIdProvider); var task = new Task(""); //Act taskManager.Save(task); //Assert Assert.IsTrue(mockedLogger.IsLogCalled); }
public async Task LogsLeaseLost() { MockedLogger mockedLogger = new MockedLogger(); LeaseLostException exception = new LeaseLostException(); MockedLease lease = new MockedLease(); CosmosDBTriggerHealthMonitor cosmosDBTriggerHealthMonitor = new CosmosDBTriggerHealthMonitor(mockedLogger); await cosmosDBTriggerHealthMonitor.InspectAsync(new HealthMonitoringRecord(HealthSeverity.Error, MonitoredOperation.AcquireLease, lease, exception)); Assert.Single(mockedLogger.Events); LogEvent loggedEvent = mockedLogger.Events[0]; Assert.Equal(LogLevel.Warning, loggedEvent.LogLevel); Assert.Equal(exception, loggedEvent.Exception); Assert.True(loggedEvent.Message.Contains(lease.ToString()) && loggedEvent.Message.Contains(MonitoredOperation.AcquireLease.ToString())); Assert.True(loggedEvent.Message.Contains("This is expected during scaling and briefly")); }
public async Task LogsError() { MockedLogger mockedLogger = new MockedLogger(); Exception exception = new Exception(); MockedLease lease = new MockedLease(); CosmosDBTriggerHealthMonitor cosmosDBTriggerHealthMonitor = new CosmosDBTriggerHealthMonitor(mockedLogger); await cosmosDBTriggerHealthMonitor.InspectAsync(new HealthMonitoringRecord(HealthSeverity.Error, MonitoredOperation.AcquireLease, lease, exception)); Assert.Single(mockedLogger.Events); LogEvent loggedEvent = mockedLogger.Events[0]; Assert.Equal(LogLevel.Error, loggedEvent.LogLevel); Assert.Equal(exception, loggedEvent.Exception); Assert.True(loggedEvent.Message.Contains(lease.ToString()) && loggedEvent.Message.Contains(MonitoredOperation.AcquireLease.ToString())); Assert.True(loggedEvent.Message.Contains("encountered an error")); }
public void ShouldThrowOnExceptionAndContainsValidInformation() { TryAction t; MockedLogger logger; logger = new MockedLogger(); t = new TryAction(logger, 1, "TestUnit", "TestMethod", () => throw new InvalidCastException("Failure")); try { t.OrThrow("Failure"); Assert.Fail(); } catch (TryException ex) { Assert.IsNotNull(ex.InnerException); Assert.IsInstanceOfType(ex.InnerException, typeof(InvalidCastException)); Assert.AreEqual(1, ex.ComponentID); Assert.AreEqual("TestUnit", ex.ComponentName); Assert.AreEqual("TestMethod", ex.MethodName); } Assert.AreEqual(1, logger.Logs.Count); }