Exemple #1
0
        public void IsExpiredAfterLimitExpires()
        {
            var clock    = new MockClock(DateTimeOffset.Now);
            var deadline = new Deadline(clock, TimeSpan.FromMinutes(5));

            clock.Advance(TimeSpan.FromMinutes(5));

            Assert.That(deadline.HasExpired, Is.True);
        }
Exemple #2
0
        public void RecordsFailureLeadingToTimeoutInDiagnosticLog()
        {
            using (var container = TemporaryDirectory.CreateNew())
            {
                var clock = new MockClock(DateTimeOffset.Now);
                var log   = Mock.Of <IDiagnosticsLog>();
                var serialiserProvider = new FailingActionSerialiserProvider(() => {
                    clock.Advance(TimeSpan.FromSeconds(10));
                    throw new OutOfMemoryException();
                });

                var sut = new LocalFilesystemStore(container.FullPath, serialiserProvider, log)
                {
                    Clock   = clock,
                    Timeout = TimeSpan.FromSeconds(5)
                };

                Assume.That(() => sut.SetValue("key", 42), Throws.InstanceOf <TimeoutException>());

                Mock.Get(log).Verify(l => l.Info(It.Is <LocalStoreTimeoutEvent>(t => t.Exception.Type.FullName == typeof(OutOfMemoryException).FullName)));
            }
        }