Пример #1
0
        public void Ctor_DirectoryWithSubDirectories_ReplacesFilesUnderNeath()
        {
            //arrange
            using (var writer = File.CreateText("PageTemplate.ascx"))
            {
                writer.Write(@"<%@ Register TagPrefix=""SP"" Namespace=""Subtext.Web.Controls"" Assembly=""Subtext.Web.Controls"" %>");
            }
            var existingCustomSkinFile = new SubtextFile(new FileInfo("PageTemplate.ascx"));
            var files = new List<IFile> { existingCustomSkinFile };
            var sourceDirectory = new Mock<IDirectory>();
            var subDirectory = new Mock<IDirectory>();
            subDirectory.Setup(s => s.GetFiles()).Returns(files);
            var directories = new List<IDirectory> {subDirectory.Object};
            sourceDirectory.Setup(s => s.GetDirectories()).Returns(directories);
            var upgrader = new SkinUpgrader(sourceDirectory.Object);

            // act
            upgrader.Run();

            //assert
            using (var reader = new StreamReader(File.OpenRead("PageTemplate.ascx")))
            {
                const string expected = @"<%@ Register TagPrefix=""SP"" Namespace=""Subtext.Web.Controls"" Assembly=""Subtext.Web"" %>";
                var text = reader.ReadToEnd();
                Assert.AreEqual(expected, text);
            }
        }
Пример #2
0
        public void OpenWrite_OnFileWithContents_ClearsContentsFirst()
        {
            // arrange
            using(var writer = File.CreateText(@"test.txt"))
            {
                writer.Write("0123456789");
            }
            var file = new SubtextFile(new FileInfo("test.txt"));

            // act
            using(var writer = new StreamWriter(file.OpenWrite()))
            {
                writer.Write("abcdef");
            }

            // assert
            using(var reader = new StreamReader(File.OpenRead("test.txt")))
            {
                string text = reader.ReadToEnd();
                Assert.AreEqual("abcdef", text);
            }
        }
Пример #3
0
 private static IDirectory GetSourceDirectory()
 {
     using (var writer = File.CreateText("PageTemplate.ascx"))
     {
         writer.Write(@"<%@ Register TagPrefix=""SP"" Namespace=""Subtext.Web.Controls"" Assembly=""Subtext.Web.Controls"" %>");
         writer.Write(@"my other content");
     }
     var existingCustomSkinFile = new SubtextFile(new FileInfo("PageTemplate.ascx"));
     var files = new List<IFile> { existingCustomSkinFile };
     var sourceDirectory = new Mock<IDirectory>();
     sourceDirectory.Setup(s => s.GetFiles()).Returns(files);
     return sourceDirectory.Object;
 }