Пример #1
0
            public void WillDeleteFilesOlderThanFiveMinutes()
            {
                var testable = new TestableDbDiskCache();

                testable.ClassUnderTest.FileList["url1"] = DateTime.Now.Subtract(new TimeSpan(0, 5, 1));
                testable.ClassUnderTest.FileList["url2"] = DateTime.Now;
                testable.ClassUnderTest.FileList["url3"] = DateTime.Now.Subtract(new TimeSpan(0, 5, 1));
                testable.ClassUnderTest.FileList["url4"] = DateTime.Now;

                testable.ClassUnderTest.PurgeOldFiles();

                Assert.Equal(2, testable.ClassUnderTest.FileList.Count);
                Assert.True(testable.ClassUnderTest.FileList.ContainsKey("url2"));
                Assert.True(testable.ClassUnderTest.FileList.ContainsKey("url4"));
                testable.Mock <IFileWrapper>().Verify(x => x.DeleteFile("url1"), Times.AtLeastOnce());
                testable.Mock <IFileWrapper>().Verify(x => x.DeleteFile("url3"), Times.AtLeastOnce());
            }
Пример #2
0
            public void WillAddUrlToList()
            {
                var testable = new TestableDbDiskCache();

                testable.Mock <IUriBuilder>().Setup(x => x.ParseSignature("key-sig-name.css")).Returns("sig");

                testable.ClassUnderTest.Save(new byte[] { 1 }, "key-sig-name.css", null);

                Assert.True(DateTime.Now.Subtract(testable.ClassUnderTest.FileList["key-sig-name.css"]).TotalSeconds < 1);
            }
Пример #3
0
            public void WillSwallowError()
            {
                var testable = new TestableDbDiskCache();

                testable.ClassUnderTest.FileList["url1"] = DateTime.Now.Subtract(new TimeSpan(0, 5, 1));
                testable.Mock <IFileWrapper>().Setup(x => x.DeleteFile(It.IsAny <string>())).Throws(new Exception());

                var ex = Record.Exception(() => testable.ClassUnderTest.PurgeOldFiles());

                Assert.Null(ex);
            }