public void CreateDirectoryTest() { // Arrange var table = "MyTable"; var tableRoot = @"\MyTableDir"; var dirStructure = @"dir1\dir2\dir3"; var dirManager = new FileTableManager(); var fileTableRepo = new Mock <FileTableRepo>(); var id1 = SqlHierarchyId.Parse("/0/"); var id2 = SqlHierarchyId.Parse("/0/1/"); var id3 = SqlHierarchyId.Parse("/0/1/2/"); fileTableRepo.Setup(m => m.FindPath(table, It.IsAny <string>(), true, It.IsAny <SqlConnection>(), false)).Returns <string>(null); fileTableRepo.Setup(m => m.CreateDirectory(table, "dir1", It.IsAny <SqlHierarchyId>(), It.IsAny <SqlConnection>(), false)).Returns(id1); fileTableRepo.Setup(m => m.CreateDirectory(table, "dir2", It.IsAny <SqlHierarchyId>(), It.IsAny <SqlConnection>(), false)).Returns(id2); fileTableRepo.Setup(m => m.CreateDirectory(table, "dir3", It.IsAny <SqlHierarchyId>(), It.IsAny <SqlConnection>(), true)).Returns(id3); fileTableRepo.Setup(m => m.GetTableRootPath(table, 0, null)).Returns(tableRoot); dirManager.FileTableRepo = fileTableRepo.Object; // Act var pathId = dirManager.CreateDirectory(table, dirStructure, null, true); // Assert Assert.AreEqual(id3, pathId); }
public void CreateDirectoryAlreadyExistsTest() { // Arrange var table = "MyTable"; var tableRoot = @"\MyTableDir"; var dirStructure = @"dir1\dir2\dir3"; var dirManager = new FileTableManager(); var fileTableRepo = new Mock <FileTableRepo>(); var stringId = "/0/"; var id = SqlHierarchyId.Parse(stringId); fileTableRepo.Setup(m => m.FindPath(table, dirStructure, true, It.IsAny <SqlConnection>(), false)).Returns(id); fileTableRepo.Setup(m => m.GetTableRootPath(table, 0, null)).Returns(tableRoot); dirManager.FileTableRepo = fileTableRepo.Object; // Act var pathId = dirManager.CreateDirectory(table, dirStructure, null, true); // Assert Assert.AreEqual(stringId, pathId.ToString()); }