Ejemplo n.º 1
0
            public void WhenGetUniqueTempPath_IfFolderExists_ShouldIncreaseIndex()
            {
                // Arrange
                var mockFileSystem = new Mock<IFileSystem>(MockBehavior.Strict);
                mockFileSystem.Setup(m => m.GetTempPath()).Returns(@"x:\temppath");
                mockFileSystem.Setup(m => m.DirectoryExists(@"x:\temppath")).Returns(true);
                mockFileSystem.Setup(m => m.DirectoryExists(@"x:\temppath\MyWebSite")).Returns(true);
                mockFileSystem.Setup(m => m.DirectoryExists(@"x:\temppath\MyWebSite_1")).Returns(true);
                mockFileSystem.Setup(m => m.DirectoryExists(@"x:\temppath\MyWebSite_2")).Returns(false);
                mockFileSystem.Setup(m => m.DirectoryCreate(@"x:\temppath\MyWebSite_2"));

                // Act       
                var helper = new ToolsHelper(mockFileSystem.Object, null, null);
                var result = helper.GetUniqueTempPath("MyWebSite");

                // Assert
                Assert.Equal(@"x:\temppath\MyWebSite_2", result);
            }
Ejemplo n.º 2
0
            public void WhenGetUniqueTempPath_IfCalledFirstTime_ShouldCreateTempRootAndFirstSubFolder()
            {
                // Arrange
                var mockFileSystem = new Mock<IFileSystem>(MockBehavior.Strict);
                mockFileSystem.Setup(m => m.GetTempPath()).Returns(@"x:\temppath");
                mockFileSystem.Setup(m => m.DirectoryExists(@"x:\temppath")).Returns(false);
                mockFileSystem.Setup(m => m.DirectoryCreate(@"x:\temppath"));
                mockFileSystem.Setup(m => m.DirectoryExists(@"x:\temppath\MyWebSite")).Returns(false);
                mockFileSystem.Setup(m => m.DirectoryCreate(@"x:\temppath\MyWebSite"));

                // Act       
                var helper = new ToolsHelper(mockFileSystem.Object, null, null);
                var result = helper.GetUniqueTempPath("MyWebSite");

                // Assert
                Assert.Equal(@"x:\temppath\MyWebSite", result);
            }