public void DisposeTest() { var instances = MemInstances(3); var l = new Redlock("r", "n", Ttl, _now, instances.ToInstances(), _log); Lock("r", "n", instances); l.Dispose(); Assert.All(instances, i => Assert.False(i.Contains("r", "n"))); }
public void Dispose_ExceptionsOnUnlock() { var mem = MemInstances(3); var err = ErrInstances(2); var l = new Redlock("r", "n", Ttl, _now, TestRedlock.Instances(mem, err), _log); Lock("r", "n", mem); l.Dispose(); Assert.All(mem, i => Assert.False(i.Contains("r", "n"))); var errorLogs = _log.Logs.Where(x => x.LogLevel == LogLevel.Error).ToArray(); Assert.Equal(2, errorLogs.Length); Assert.Contains(errorLogs, e => e.Exception == err[0].UnlockException); Assert.Contains(errorLogs, e => e.Exception == err[1].UnlockException); }