public void Heartbeat_DoesNotUpdateCurrentSnapshotAccessTime_WhenSnapshotDoesNotExist() { _mockStorage.Setup(_ => _.SnapshotExists("Current")).Returns(false); using (var purger = new DependencySnapshotPurger(_mockStorage.Object)) { purger.Heartbeat("Current", _mockLogger.Object); } _mockStorage.Verify(_ => _.SetSnapshotAccessTimeToUtcNow(It.IsAny <string>()), Times.Never); }
public void Heartbeat_Tolerates_FileAccessFailures(Exception exception) { const string snapshotPath = "FakeSnapshotPath"; _mockStorage.Setup(_ => _.SnapshotExists(snapshotPath)).Returns(true); _mockStorage.Setup(_ => _.SetSnapshotAccessTimeToUtcNow(snapshotPath)) .Throws(exception); using (var purger = new DependencySnapshotPurger(_mockStorage.Object)) { purger.Heartbeat(snapshotPath, _mockLogger.Object); } _mockLogger.Verify( _ => _.Log( false, LogLevel.Warning, It.Is <string>( message => message.Contains(exception.GetType().FullName) && message.Contains(exception.Message) && message.Contains(snapshotPath)), null), Times.AtLeastOnce); }