public void LockWillTimeout() { var provider = new MongoJobLockProvider(IoC.GetInstance <IJobLockRepository>()); JobLock v1 = provider.Acquire("Test"); Console.WriteLine(v1); Assert.True(v1.LockAcquired); JobLock v2 = provider.Acquire("Test"); Console.WriteLine(v2); Assert.False(v2.LockAcquired); var l = Repository.GetByName("Test"); l.CreatedDate = l.CreatedDate.Subtract(TimeSpan.FromMinutes(25)); Repository.Save(l); JobLock v3 = provider.Acquire("Test"); Console.WriteLine(v3); Assert.True(v3.LockAcquired); v1.Dispose(); v2.Dispose(); v3.Dispose(); }
public void CanLock() { var provider = new MongoJobLockProvider(IoC.GetInstance <IJobLockRepository>()); JobLock v1 = provider.Acquire("Test"); Console.WriteLine(v1); Assert.True(v1.LockAcquired); JobLock v2 = provider.Acquire("Test"); Console.WriteLine(v2); Assert.False(v2.LockAcquired); v1.Dispose(); JobLock v3 = provider.Acquire("Test"); Console.WriteLine(v3); Assert.True(v3.LockAcquired); v2.Dispose(); v3.Dispose(); }