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); }
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); }