public void FileExistsVppLaterTest() { var path = "~/index.cshtml"; var cache = new FileExistenceCache(GetVpp(path)); Assert.True(cache.FileExists(path)); Assert.False(cache.FileExists("~/test.cshtml")); }
internal BuildManagerViewEngine(IViewPageActivator viewPageActivator, IResolver <IViewPageActivator> activatorResolver, IDependencyResolver dependencyResolver, VirtualPathProvider pathProvider) { if (viewPageActivator != null) { _viewPageActivator = viewPageActivator; } else { _activatorResolver = activatorResolver ?? new SingleServiceResolver <IViewPageActivator>( () => null, new DefaultViewPageActivator(dependencyResolver), "BuildManagerViewEngine constructor"); } if (pathProvider != null) { _fileExistsCache = new FileExistenceCache(pathProvider); } else { if (_sharedFileExistsCache == null) { VirtualPathProvider defaultPathProvider = HostingEnvironment.VirtualPathProvider; // Path provider may not be present in test context. if (defaultPathProvider != null) { // Startup initialization race is OK providing service remains read-only _sharedFileExistsCache = new FileExistenceCache(HostingEnvironment.VirtualPathProvider); } } _fileExistsCache = _sharedFileExistsCache; } }
public void ResetTest() { var cache = new FileExistenceCache(GetVpp()); var cacheInternal = cache.CacheInternal; cache.Reset(); Assert.NotSame(cacheInternal, cache.CacheInternal); }
public void TimeExceededTrueTest() { var ms = 5; var cache = new FileExistenceCache(GetVpp(), ms); Thread.Sleep(300); Assert.True(cache.TimeExceeded); }
public void TimeExceededFalseTest() { var ms = 100000; var cache = new FileExistenceCache(GetVpp(), ms); Assert.False(cache.TimeExceeded); }
public void FileExistsTest_VPPRegistrationChanging() { // Arrange string path = "~/Index.cshtml"; Mock <VirtualPathProvider> mockProvider = new Mock <VirtualPathProvider>( MockBehavior.Strict ); mockProvider .Setup(c => c.FileExists(It.IsAny <string>())) .Returns <string>(p => p.Equals(path)) .Verifiable(); VirtualPathProvider provider = null; // Act FileExistenceCache cache = new FileExistenceCache(() => provider); // The moral equivalent of HostingEnvironment.RegisterVirtualPathProvider(mockProvider.Object) provider = mockProvider.Object; bool createExists = cache.FileExists("~/Create.cshtml"); bool indexExists = cache.FileExists(path); // Assert Assert.False(createExists); Assert.True(indexExists); mockProvider.Verify(); mockProvider.Verify(vpp => vpp.FileExists(It.IsAny <string>()), Times.Exactly(2)); }
public void ConstructorTestWithNull() { // Arrange & Act FileExistenceCache cache = new FileExistenceCache(() => null); // Assert Assert.Null(cache.VirtualPathProvider); }
public void ResetTest() { var cache = new FileExistenceCache(null); var cacheInternal = cache.CacheInternal; cache.Reset(); Assert.AreNotEqual(cacheInternal, cache.CacheInternal); }
public void FileExistsTest() { AppDomainUtils.RunInSeparateAppDomain(() => { var path = "~/index.cshtml"; Utils.SetupVirtualPathInAppDomain(path, ""); var cache = FileExistenceCache.GetInstance(); Assert.IsTrue(cache.FileExists(path)); Assert.IsFalse(cache.FileExists("~/test.cshtml")); }); }
public void FileExistsTimeExceededTest() { var path = "~/index.cshtml"; Utils.SetupVirtualPathInAppDomain(path, ""); var cache = new FileExistenceCache(GetVpp(path)); var cacheInternal = cache.CacheInternal; cache.MilliSecondsBeforeReset = 5; Thread.Sleep(300); Assert.True(cache.FileExists(path)); Assert.False(cache.FileExists("~/test.cshtml")); Assert.NotEqual(cacheInternal, cache.CacheInternal); }
public void FileExistsTimeExceededTest() { AppDomainUtils.RunInSeparateAppDomain(() => { var path = "~/index.cshtml"; Utils.SetupVirtualPathInAppDomain(path, ""); var cache = FileExistenceCache.GetInstance(); var cacheInternal = cache.CacheInternal; cache.MilliSecondsBeforeReset = 5; Thread.Sleep(300); Assert.IsTrue(cache.FileExists(path)); Assert.IsFalse(cache.FileExists("~/test.cshtml")); Assert.AreNotEqual(cacheInternal, cache.CacheInternal); }); }
public void ConstructorTest() { var ms = 1000; FileExistenceCache cache; var vpp = new Mock<VirtualPathProvider>().Object; cache = new FileExistenceCache(vpp); Assert.Equal(vpp, cache.VirtualPathProvider); Assert.Equal(ms, cache.MilliSecondsBeforeReset); ms = 9999; cache = new FileExistenceCache(vpp, ms); Assert.Equal(vpp, cache.VirtualPathProvider); Assert.Equal(ms, cache.MilliSecondsBeforeReset); }
public void ConstructorTest_VPPRegistrationChanging() { // Arrange Mock <VirtualPathProvider> mockProvider = new Mock <VirtualPathProvider>(MockBehavior.Strict); VirtualPathProvider provider = null; // Act FileExistenceCache cache = new FileExistenceCache(() => provider); // The moral equivalent of HostingEnvironment.RegisterVirtualPathProvider(mockProvider.Object) provider = mockProvider.Object; // Assert Assert.Equal(provider, cache.VirtualPathProvider); mockProvider.Verify(); }
public void ConstructorTest() { var ms = 1000; FileExistenceCache cache; var vpp = new Mock <VirtualPathProvider>().Object; cache = new FileExistenceCache(vpp); Assert.Equal(vpp, cache.VirtualPathProvider); Assert.Equal(ms, cache.MilliSecondsBeforeReset); ms = 9999; cache = new FileExistenceCache(vpp, ms); Assert.Equal(vpp, cache.VirtualPathProvider); Assert.Equal(ms, cache.MilliSecondsBeforeReset); }
public void ConstructorTest_VPPRegistrationChanging() { // Arrange Mock<VirtualPathProvider> mockProvider = new Mock<VirtualPathProvider>(MockBehavior.Strict); VirtualPathProvider provider = null; // Act FileExistenceCache cache = new FileExistenceCache(() => provider); // The moral equivalent of HostingEnvironment.RegisterVirtualPathProvider(mockProvider.Object) provider = mockProvider.Object; // Assert Assert.Equal(provider, cache.VirtualPathProvider); mockProvider.Verify(); }
public void FileExistsTest_VPPRegistrationChanging() { // Arrange string path = "~/Index.cshtml"; Mock<VirtualPathProvider> mockProvider = new Mock<VirtualPathProvider>(MockBehavior.Strict); mockProvider.Setup(c => c.FileExists(It.IsAny<string>())).Returns<string>(p => p.Equals(path)).Verifiable(); VirtualPathProvider provider = null; // Act FileExistenceCache cache = new FileExistenceCache(() => provider); // The moral equivalent of HostingEnvironment.RegisterVirtualPathProvider(mockProvider.Object) provider = mockProvider.Object; bool createExists = cache.FileExists("~/Create.cshtml"); bool indexExists = cache.FileExists(path); // Assert Assert.False(createExists); Assert.True(indexExists); mockProvider.Verify(); mockProvider.Verify(vpp => vpp.FileExists(It.IsAny<string>()), Times.Exactly(2)); }