private void TestSkypGetNonExistentPath() { const string skyZip = "empty.sky.zip"; var skyZipPath = TestFilesDir.GetTestPath(skyZip); Assert.AreEqual(skyZipPath, SkypFile.GetNonExistentPath(TestFilesDir.FullPath, skyZip)); // Create the file so that GetNonExistentPath appends a (1) suffix to the file name using (File.Create(skyZipPath)) { } Assert.IsTrue(File.Exists(skyZipPath)); skyZipPath = TestFilesDir.GetTestPath("empty(1).sky.zip"); Assert.AreEqual(skyZipPath, SkypFile.GetNonExistentPath(TestFilesDir.FullPath, skyZip)); // Create a empty(1) directory. // Now empty.sky.zip AND empty(1) directory exist in the folder. // empty(1).sky.zip does not exist, but opening a file by this name will extract the zip // in an empty(1)(1) since empty(1) exists. So we append a (2) suffix to fhe filename so // that the zip is extracted in an empty(2) folder. Directory.CreateDirectory(TestFilesDir.GetTestPath("empty(1)")); skyZipPath = TestFilesDir.GetTestPath("empty(2).sky.zip"); Assert.AreEqual(skyZipPath, SkypFile.GetNonExistentPath(TestFilesDir.FullPath, skyZip)); }