当前位置: 首页>>代码示例>>C#>>正文


C# TestFileSystem.AddFile方法代码示例

本文整理汇总了C#中System.Web.WebPages.Deployment.Test.TestFileSystem.AddFile方法的典型用法代码示例。如果您正苦于以下问题:C# TestFileSystem.AddFile方法的具体用法?C# TestFileSystem.AddFile怎么用?C# TestFileSystem.AddFile使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.Web.WebPages.Deployment.Test.TestFileSystem的用法示例。


在下文中一共展示了TestFileSystem.AddFile方法的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: GetVersionFromBinReturnsVersionFromBinIfLower

        public void GetVersionFromBinReturnsVersionFromBinIfLower()
        {
            // Arrange
            var binDirectory = @"X:\test\project";
            TestFileSystem fileSystem = new TestFileSystem();
            fileSystem.AddFile(Path.Combine(binDirectory, "System.Web.WebPages.Deployment.dll"));
            Func<string, AssemblyName> getAssembyName = _ => new AssemblyName("System.Web.WebPages.Deployment, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35");

            // Act
            var binVersion = AssemblyUtils.GetVersionFromBin(binDirectory, fileSystem, getAssembyName);

            // Assert
            Assert.Equal(new Version("1.0.0.0"), binVersion);
        }
开发者ID:marojeri,项目名称:aspnetwebstack,代码行数:14,代码来源:AssemblyUtilsTest.cs

示例2: PreApplicationStartCodeUsesVersionSpecifiedInConfigIfWebPagesIsImplicitlyEnabled

        public void PreApplicationStartCodeUsesVersionSpecifiedInConfigIfWebPagesIsImplicitlyEnabled()
        {
            // Arrange
            Version loadedVersion = null;
            bool registeredForChangeNotification = false;
            IEnumerable<AssemblyName> loadedAssemblies = GetAssemblies("1.12.123.1234", "2.1.0.0");
            Version webPagesVersion = new Version("1.12.123.1234");

            var fileSystem = new TestFileSystem();
            fileSystem.AddFile("Default.cshtml");
            var buildManager = new TestBuildManager();
            var nameValueCollection = GetAppSettings(enabled: null, webPagesVersion: webPagesVersion);
            Action<Version> loadWebPages = (version) => { loadedVersion = version; };
            Action registerForChange = () => { registeredForChangeNotification = true; };

            // Act
            bool loaded = PreApplicationStartCode.StartCore(fileSystem, "", "bin", nameValueCollection, loadedAssemblies, buildManager, loadWebPages, registerForChange, getAssemblyNameThunk: null);

            // Assert
            Assert.True(loaded);
            Assert.Equal(webPagesVersion, loadedVersion);
            Assert.False(registeredForChangeNotification);
            VerifyVersionFile(buildManager, webPagesVersion);
        }
开发者ID:chrissimon-au,项目名称:aspnetwebstack,代码行数:24,代码来源:PreApplicationStartCodeTest.cs

示例3: ObsoleteGetVersionReturnsV1VersionIfNoValueInConfigNoFilesInBinSiteContainsCshtmlFiles

        public void ObsoleteGetVersionReturnsV1VersionIfNoValueInConfigNoFilesInBinSiteContainsCshtmlFiles()
        {
            // Arrange
            var path = "blah";
            var fileSystem = new TestFileSystem();
            fileSystem.AddFile(@"blah\Foo.cshtml");
            var configuration = new NameValueCollection();

            // Act
            var version = WebPagesDeployment.GetObsoleteVersionInternal(path, configuration, fileSystem);

            // Assert
            Assert.Equal(new Version("1.0.0.0"), version);
        }
开发者ID:marojeri,项目名称:aspnetwebstack,代码行数:14,代码来源:WebPagesDeploymentTest.cs

示例4: PreApplicationStartCodeThrowsIfVersionSpecifiedInConfigIsNotAvailable

        public void PreApplicationStartCodeThrowsIfVersionSpecifiedInConfigIsNotAvailable()
        {
            // Arrange
            Version loadedVersion = null;

            var binDirectory = DeploymentUtil.GetBinDirectory();
            IEnumerable<AssemblyName> loadedAssemblies = GetAssemblies("1.0.0.0", AssemblyUtils.ThisAssemblyName.Version.ToString());

            var fileSystem = new TestFileSystem();
            fileSystem.AddFile("Index.cshtml");
            var buildManager = new TestBuildManager();
            var content = AssemblyUtils.ThisAssemblyName.Version + Environment.NewLine;
            buildManager.Stream = new MemoryStream(Encoding.Default.GetBytes(content));

            var nameValueCollection = GetAppSettings(enabled: null, webPagesVersion: new Version("1.5"));
            Action<Version> loadWebPages = (version) => { loadedVersion = version; };
            Action registerForChange = () => { };

            // Act and Assert
            Assert.Throws<InvalidOperationException>(() =>
                                                              PreApplicationStartCode.StartCore(fileSystem, "", binDirectory, nameValueCollection, loadedAssemblies, buildManager: buildManager, loadWebPages: loadWebPages, registerForChangeNotification: registerForChange, getAssemblyNameThunk: null),
                                                              String.Format("Specified Web Pages version \"1.5.0.0\" could not be found. Update your web.config to specify a different version. Current version: \"{0}\".",
                                                                            AssemblyUtils.ThisAssemblyName.Version));
        }
开发者ID:chrissimon-au,项目名称:aspnetwebstack,代码行数:24,代码来源:PreApplicationStartCodeTest.cs

示例5: PreApplicationStartCodeThrowsIfVersionIsSpecifiedInConfigAndDifferentVersionExistsInBin

        public void PreApplicationStartCodeThrowsIfVersionIsSpecifiedInConfigAndDifferentVersionExistsInBin()
        {
            // Arrange
            Version loadedVersion = null;

            var binDirectory = DeploymentUtil.GetBinDirectory();
            IEnumerable<AssemblyName> loadedAssemblies = GetAssemblies("1.0.0.0", AssemblyUtils.ThisAssemblyName.Version.ToString());

            var fileSystem = new TestFileSystem();
            fileSystem.AddFile("Index.cshtml");
            fileSystem.AddFile(Path.Combine(binDirectory, "System.Web.WebPages.Deployment.dll"));
            var buildManager = new TestBuildManager();
            var content = AssemblyUtils.ThisAssemblyName.Version + Environment.NewLine;
            buildManager.Stream = new MemoryStream(Encoding.Default.GetBytes(content));

            var nameValueCollection = GetAppSettings(enabled: null, webPagesVersion: new Version("1.0.0"));
            Action<Version> loadWebPages = (version) => { loadedVersion = version; };
            Action registerForChange = () => { };
            Func<string, AssemblyName> getAssembyName = _ => new AssemblyName("System.Web.WebPages.Deployment, Version=" + AssemblyUtils.ThisAssemblyName.Version + ", Culture=neutral, PublicKeyToken=31bf3856ad364e35");

            // Act and Assert
            Assert.Throws<InvalidOperationException>(() =>
                                                              PreApplicationStartCode.StartCore(fileSystem, "", binDirectory, nameValueCollection, loadedAssemblies, buildManager: buildManager, loadWebPages: loadWebPages, registerForChangeNotification: registerForChange, getAssemblyNameThunk: getAssembyName),
                                                              String.Format(@"Conflicting versions of ASP.NET Web Pages detected: specified version is ""1.0.0.0"", but the version in bin is ""{0}"". To continue, remove files from the application's bin directory or remove the version specification in web.config.",
                                                                            AssemblyUtils.ThisAssemblyName.Version));
        }
开发者ID:chrissimon-au,项目名称:aspnetwebstack,代码行数:26,代码来源:PreApplicationStartCodeTest.cs

示例6: PreApplicationStartCodeDoesNotForceRecompileIfNewVersionIsV1AndCurrentAssemblyIsNotMaxVersion

        public void PreApplicationStartCodeDoesNotForceRecompileIfNewVersionIsV1AndCurrentAssemblyIsNotMaxVersion()
        {
            // Arrange
            Version loadedVersion = null;
            bool registeredForChangeNotification = false;
            IEnumerable<AssemblyName> loadedAssemblies = GetAssemblies("2.1.0.0", "5.0.0.0");

            var fileSystem = new TestFileSystem();
            fileSystem.AddFile("Index.cshtml");
            var buildManager = new TestBuildManager();
            var content = AssemblyUtils.ThisAssemblyName.Version + Environment.NewLine;
            buildManager.Stream = new MemoryStream(Encoding.Default.GetBytes(content));

            var nameValueCollection = GetAppSettings(enabled: null, webPagesVersion: new Version("1.0.0"));
            Action<Version> loadWebPages = (version) => { loadedVersion = version; };
            Action registerForChange = () => { registeredForChangeNotification = true; };

            // Act
            bool loaded = PreApplicationStartCode.StartCore(fileSystem, "", @"site\bin", nameValueCollection, loadedAssemblies, buildManager, loadWebPages, registerForChange, null);

            // Assert
            Assert.False(loaded);
            Assert.False(registeredForChangeNotification);
            VerifyVersionFile(buildManager, AssemblyUtils.ThisAssemblyName.Version);
            Assert.False(fileSystem.FileExists(@"site\bin\WebPagesRecompilation.deleteme"));
        }
开发者ID:chrissimon-au,项目名称:aspnetwebstack,代码行数:26,代码来源:PreApplicationStartCodeTest.cs

示例7: PreApplicationStartCodeForcesRecompileIfPreviousVersionIsNotTheSameAsCurrentVersion

        public void PreApplicationStartCodeForcesRecompileIfPreviousVersionIsNotTheSameAsCurrentVersion()
        {
            // Arrange
            Version loadedVersion = null;
            bool registeredForChangeNotification = false;
            IEnumerable<AssemblyName> loadedAssemblies = GetAssemblies("2.1.0.0");

            var fileSystem = new TestFileSystem();
            fileSystem.AddFile("Index.cshtml");
            var buildManager = new TestBuildManager();
            var content = "1.0.0.0" + Environment.NewLine;
            buildManager.Stream = new MemoryStream(Encoding.Default.GetBytes(content));

            var nameValueCollection = GetAppSettings(enabled: null, webPagesVersion: new Version("2.1.0.0"));
            Action<Version> loadWebPages = (version) => { loadedVersion = version; };
            Action registerForChange = () => { registeredForChangeNotification = true; };

            // Act
            var ex = Assert.Throws<HttpCompileException>(() =>
                PreApplicationStartCode.StartCore(fileSystem, "", @"site\bin", nameValueCollection, loadedAssemblies, buildManager, loadWebPages, registerForChange, null)
            );

            // Assert
            Assert.Equal("Changes were detected in the Web Pages runtime version that require your application to be recompiled. Refresh your browser window to continue.", ex.Message);
            Assert.Equal(ex.Data["WebPages.VersionChange"], true);
            Assert.False(registeredForChangeNotification);
            VerifyVersionFile(buildManager, new Version("2.1.0.0"));
            Assert.True(fileSystem.FileExists(@"site\bin\WebPagesRecompilation.deleteme"));
        }
开发者ID:chrissimon-au,项目名称:aspnetwebstack,代码行数:29,代码来源:PreApplicationStartCodeTest.cs

示例8: PreApplicationStartCodeDoesNotLoadIfAHigherVersionIsAvailableInGac

        public void PreApplicationStartCodeDoesNotLoadIfAHigherVersionIsAvailableInGac()
        {
            // Arrange
            Version loadedVersion = null;
            bool registeredForChangeNotification = false;
            // Hopefully we'd have figured out a better way to load Plan9 by v8.
            var webPagesVersion = new Version("8.0.0.0");
            IEnumerable<AssemblyName> loadedAssemblies = GetAssemblies("1.0.0.0", "2.1.0.0", "8.0.0.0");

            var fileSystem = new TestFileSystem();
            fileSystem.AddFile("Index.cshtml");
            var buildManager = new TestBuildManager();
            var nameValueCollection = GetAppSettings(enabled: null, webPagesVersion: null);
            Action<Version> loadWebPages = (version) => { loadedVersion = version; };
            Action registerForChange = () => { registeredForChangeNotification = true; };

            // Act
            bool loaded = PreApplicationStartCode.StartCore(fileSystem, "", "bin", nameValueCollection, loadedAssemblies, buildManager, loadWebPages, registerForChange, null);

            // Assert
            Assert.False(loaded);
            Assert.Null(loadedVersion);
            Assert.False(registeredForChangeNotification);
            Assert.Equal(0, buildManager.Stream.Length);
        }
开发者ID:chrissimon-au,项目名称:aspnetwebstack,代码行数:25,代码来源:PreApplicationStartCodeTest.cs

示例9: PreApplicationStartCodeDoesNotLoadIfAHigherVersionIsAvailableInBin

        public void PreApplicationStartCodeDoesNotLoadIfAHigherVersionIsAvailableInBin()
        {
            // Arrange
            Version loadedVersion = null;
            bool registeredForChangeNotification = false;
            IEnumerable<AssemblyName> loadedAssemblies = GetAssemblies("2.1.0.0", "8.0.0.0");

            var binDirectory = DeploymentUtil.GetBinDirectory();

            var fileSystem = new TestFileSystem();
            fileSystem.AddFile("Index.cshtml");
            fileSystem.AddFile(Path.Combine(binDirectory, "System.Web.WebPages.Deployment.dll"));
            var buildManager = new TestBuildManager();
            var nameValueCollection = GetAppSettings(enabled: null, webPagesVersion: null);
            Action<Version> loadWebPages = (version) => { loadedVersion = version; };
            Action registerForChange = () => { registeredForChangeNotification = true; };
            Func<string, AssemblyName> getAssembyName = _ => new AssemblyName("System.Web.WebPages.Deployment, Version=8.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35");

            // Act
            bool loaded = PreApplicationStartCode.StartCore(fileSystem, "", binDirectory, nameValueCollection, loadedAssemblies, buildManager, loadWebPages, registerForChange, getAssembyName);

            // Assert
            Assert.False(loaded);
            Assert.Null(loadedVersion);
            Assert.False(registeredForChangeNotification);
            Assert.Equal(0, buildManager.Stream.Length);
        }
开发者ID:chrissimon-au,项目名称:aspnetwebstack,代码行数:27,代码来源:PreApplicationStartCodeTest.cs

示例10: PreApplicationStartCodeThrowsIfNoVersionIsSpecifiedAndV1IsNotAvailable

        public void PreApplicationStartCodeThrowsIfNoVersionIsSpecifiedAndV1IsNotAvailable()
        {
            // Arrange
            Version loadedVersion = null;
            bool registeredForChangeNotification = false;
            var webPagesVersion = AssemblyUtils.ThisAssemblyName.Version;
            IEnumerable<AssemblyName> loadedAssemblies = GetAssemblies("2.1.0.0");

            // Note: For this test to work with future versions we would need to create corresponding embedded resources with that version in it.
            var fileSystem = new TestFileSystem();
            var buildManager = new TestBuildManager();
            fileSystem.AddFile("Index.cshtml");
            var nameValueCollection = GetAppSettings(enabled: null, webPagesVersion: null);
            Action<Version> loadWebPages = (version) => { loadedVersion = version; };
            Action registerForChange = () => { registeredForChangeNotification = true; };

            // Act and Assert
            Assert.Throws<InvalidOperationException>(() =>
                PreApplicationStartCode.StartCore(fileSystem, "", "bin", nameValueCollection, loadedAssemblies, buildManager, loadWebPages, registerForChange, null),
@"Could not determine which version of ASP.NET Web Pages to use.

In order to use this site, specify a version in the site’s web.config file. For more information, see the following article on the Microsoft support site: http://go.microsoft.com/fwlink/?LinkId=254126");
            Assert.False(registeredForChangeNotification);
            Assert.Equal(0, buildManager.Stream.Length);
        }
开发者ID:chrissimon-au,项目名称:aspnetwebstack,代码行数:25,代码来源:PreApplicationStartCodeTest.cs

示例11: PreApplicationStartCodeLoadsV1IfNoVersionIsSpecifiedAndCurrentAssemblyIsTheMaximumVersionAvailable

        public void PreApplicationStartCodeLoadsV1IfNoVersionIsSpecifiedAndCurrentAssemblyIsTheMaximumVersionAvailable()
        {
            // Arrange
            Version loadedVersion = null;
            bool registeredForChangeNotification = false;
            var webPagesVersion = AssemblyUtils.ThisAssemblyName.Version;
            var v1Version = new Version("1.0.0.0");
            IEnumerable<AssemblyName> loadedAssemblies = GetAssemblies("1.0.0.0", "2.1.0.0");

            // Note: For this test to work with future versions we would need to create corresponding embedded resources with that version in it.
            var fileSystem = new TestFileSystem();
            var buildManager = new TestBuildManager();
            fileSystem.AddFile("Index.cshtml");
            var nameValueCollection = GetAppSettings(enabled: null, webPagesVersion: null);
            Action<Version> loadWebPages = (version) => { loadedVersion = version; };
            Action registerForChange = () => { registeredForChangeNotification = true; };

            // Act
            bool loaded = PreApplicationStartCode.StartCore(fileSystem, "", "bin", nameValueCollection, loadedAssemblies, buildManager, loadWebPages, registerForChange, null);

            // Assert
            Assert.True(loaded);
            Assert.Equal(v1Version, loadedVersion);
            Assert.False(registeredForChangeNotification);
            VerifyVersionFile(buildManager, v1Version);
        }
开发者ID:chrissimon-au,项目名称:aspnetwebstack,代码行数:26,代码来源:PreApplicationStartCodeTest.cs

示例12: GetVersionFromBinReturnsNullIfFileInBinIsNotAValidBinary

        public void GetVersionFromBinReturnsNullIfFileInBinIsNotAValidBinary()
        {
            // Arrange
            var binDirectory = @"X:\test\project";
            TestFileSystem fileSystem = new TestFileSystem();
            fileSystem.AddFile(Path.Combine(binDirectory, "System.Web.WebPages.Deployment.dll"));
            Func<string, AssemblyName> getAssembyName = _ => { throw new FileLoadException(); };

            // Act
            var binVersion = AssemblyUtils.GetVersionFromBin(binDirectory, fileSystem, getAssembyName);

            // Assert
            Assert.Null(binVersion);
        }
开发者ID:marojeri,项目名称:aspnetwebstack,代码行数:14,代码来源:AssemblyUtilsTest.cs

示例13: GetVersionFromBinReturnsVersionFromBinIfSameVersion

        public void GetVersionFromBinReturnsVersionFromBinIfSameVersion()
        {
            // Arrange
            var binDirectory = @"X:\test\project";
            TestFileSystem fileSystem = new TestFileSystem();
            fileSystem.AddFile(Path.Combine(binDirectory, "System.Web.WebPages.Deployment.dll"));
            Func<string, AssemblyName> getAssembyName = _ => new AssemblyName(LatestAssemblyName());

            // Act
            var binVersion = AssemblyUtils.GetVersionFromBin(binDirectory, fileSystem, getAssembyName);

            // Assert
            Assert.Equal(LatestRazorVersion.LatestVersion, binVersion);
        }
开发者ID:AndreGleichner,项目名称:aspnetwebstack,代码行数:14,代码来源:AssemblyUtilsTest.cs

示例14: PreApplicationStartCodeDoesNothingIfItIsAvailableInBinAndFileExistsInRootOfWebSite

        public void PreApplicationStartCodeDoesNothingIfItIsAvailableInBinAndFileExistsInRootOfWebSite()
        {
            // Arrange
            Version loadedVersion = null;
            bool registeredForChangeNotification = false;
            var webPagesVersion = AssemblyUtils.ThisAssemblyName.Version;
            IEnumerable<AssemblyName> loadedAssemblies = GetAssemblies(AssemblyUtils.ThisAssemblyName.Version.ToString());

            var fileSystem = new TestFileSystem();
            var binDirectory = DeploymentUtil.GetBinDirectory();

            var buildManager = new TestBuildManager();
            fileSystem.AddFile("Default.cshtml");
            fileSystem.AddFile(Path.Combine(binDirectory, "System.Web.WebPages.Deployment.dll"));
            var nameValueCollection = GetAppSettings(enabled: null, webPagesVersion: null);
            Action<Version> loadWebPages = (version) => { loadedVersion = version; };
            Action registerForChange = () => { registeredForChangeNotification = true; };
            Func<string, AssemblyName> getAssembyName = _ => new AssemblyName("System.Web.WebPages.Deployment, Version=" + AssemblyUtils.ThisAssemblyName.Version.ToString() + ", Culture=neutral, PublicKeyToken=2f9147bba06de483");

            // Act
            bool loaded = PreApplicationStartCode.StartCore(fileSystem, "", binDirectory, nameValueCollection, loadedAssemblies, buildManager, loadWebPages, registerForChange, getAssembyName);

            // Assert
            Assert.False(loaded);
            Assert.Null(loadedVersion);
            Assert.False(registeredForChangeNotification);
            Assert.Equal(0, buildManager.Stream.Length);
        }
开发者ID:drivenet,项目名称:aspnetwebstack,代码行数:28,代码来源:PreApplicationStartCodeTest.cs


注:本文中的System.Web.WebPages.Deployment.Test.TestFileSystem.AddFile方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。