public void CanDeleteFiles() { string parent1 = "/parent1"; string file1 = parent1 + "/sub1", file2 = parent1 + "/sub2"; TestVolume.CreateFile(VolumePath.FromString(file1)); TestVolume.CreateFile(VolumePath.FromString(file2)); Assert.IsTrue(TestVolume.Delete(VolumePath.FromString(file1))); VolumeDirectory dir = TestVolume.Open(VolumePath.FromString(parent1)) as VolumeDirectory; Assert.AreEqual(1, dir.List().Count); Assert.AreEqual(file2, dir.List()["sub2"].Path.ToString()); Assert.IsInstanceOf <VolumeFile>(dir.List()["sub2"]); TestVolume.CreateFile(VolumePath.FromString(file2 + ".ks")); Assert.IsTrue(TestVolume.Delete(VolumePath.FromString(file2 + ".ks"))); Assert.AreEqual(1, dir.List().Count); Assert.AreEqual(file2, dir.List()["sub2"].Path.ToString()); Assert.IsInstanceOf <VolumeFile>(dir.List()["sub2"]); TestVolume.CreateFile(VolumePath.FromString(file2 + ".ks")); Assert.IsTrue(TestVolume.Delete(VolumePath.FromString(file2))); Assert.AreEqual(1, dir.List().Count); Assert.AreEqual(file2 + ".ks", dir.List()["sub2.ks"].Path.ToString()); Assert.IsInstanceOf <VolumeFile>(dir.List()["sub2.ks"]); Assert.IsTrue(TestVolume.Delete(VolumePath.FromString(file2))); Assert.AreEqual(0, dir.List().Count); }
public void CanCreateFiles() { string parent1 = "/parent1", parent2 = "/parent2"; string file1 = parent1 + "/sub1/file", file2 = parent1 + "/sub2", file3 = parent2 + "/sub3"; TestVolume.CreateFile(VolumePath.FromString(file1)); TestVolume.CreateFile(VolumePath.FromString(file2)); TestVolume.CreateFile(VolumePath.FromString(file3)); Assert.AreEqual(2, TestVolume.Root.List().Count); Assert.AreEqual(parent1, TestVolume.Root.List()["parent1"].Path.ToString()); Assert.AreEqual(parent2, TestVolume.Root.List()["parent2"].Path.ToString()); VolumeDirectory dir = TestVolume.Open(VolumePath.FromString(parent1)) as VolumeDirectory; Assert.AreEqual(2, dir.List().Count); Assert.AreEqual("/parent1/sub1", dir.List()["sub1"].Path.ToString()); Assert.IsInstanceOf <VolumeDirectory>(dir.List()["sub1"]); Assert.AreEqual(file2, dir.List()["sub2"].Path.ToString()); Assert.IsInstanceOf <VolumeFile>(dir.List()["sub2"]); dir = TestVolume.Open(VolumePath.FromString("/parent1/sub1")) as VolumeDirectory; Assert.AreEqual(1, dir.List().Count); Assert.AreEqual("/parent1/sub1/file", dir.List()["file"].Path.ToString()); Assert.IsInstanceOf <VolumeFile>(dir.List()["file"]); dir = TestVolume.Open(VolumePath.FromString(parent2)) as VolumeDirectory; Assert.AreEqual(1, dir.List().Count); Assert.AreEqual(file3, dir.List()["sub3"].Path.ToString()); Assert.IsInstanceOf <VolumeFile>(dir.List()["sub3"]); }
public void CanReadAndWriteFiles() { string dir = "/content_parent/content_test"; string content = "some test content!@#$;\n\rtaenstałąż"; int contentLength = Encoding.UTF8.GetBytes(content).Length; VolumeFile volumeFile = TestVolume.CreateFile(VolumePath.FromString(dir)); Assert.AreEqual(0, volumeFile.ReadAll().Bytes.Length); Assert.AreEqual("", volumeFile.ReadAll().String); Assert.IsTrue(volumeFile.Write(content)); Assert.AreEqual(FileCategory.ASCII, volumeFile.ReadAll().Category); Assert.AreEqual(contentLength, TestVolume.Size); if (ExpectedCapacity != Volume.INFINITE_CAPACITY) { Assert.AreEqual(ExpectedCapacity - contentLength, TestVolume.FreeSpace); } else { Assert.AreEqual(Volume.INFINITE_CAPACITY, TestVolume.FreeSpace); } Assert.AreEqual(contentLength, volumeFile.Size); Assert.AreEqual(content, volumeFile.ReadAll().String); // we should be able to save the same file again Assert.IsTrue(TestVolume.SaveFile(volumeFile) != null); }
public void CanFailWhenCreatingFileOverDirectory() { string parent1 = "/parent1"; string file1 = parent1 + "/sub1"; TestVolume.CreateDirectory(VolumePath.FromString(file1)); TestVolume.CreateFile(VolumePath.FromString(file1)); }
public void CanFailWhenCreatingFileInASubdirectoryThatIsAFile() { string parent = "/parent1"; string file = parent + "/file"; TestVolume.CreateFile(VolumePath.FromString(parent)); TestVolume.CreateFile(VolumePath.FromString(file)); }
public void CanFailWhenCreatingFileOverExistingFile() { string parent = "/parent1"; string file = parent + "/file"; TestVolume.CreateFile(VolumePath.FromString(file)); TestVolume.CreateFile(VolumePath.FromString(file)); }
public void CanDeleteNonExistingFiles() { VolumePath path = VolumePath.FromString("/abc"); TestVolume.CreateFile(path); // Delete the file twice Assert.IsTrue(TestVolume.Delete(path)); Assert.IsFalse(TestVolume.Delete(path)); }
public void CanFailWhenCreatingFileWithNegativeDepth() { string dir = "/../test"; TestVolume.CreateFile(VolumePath.FromString(dir)); }
public void CanFailWhenCreatingFileOverRootDirectory() { TestVolume.CreateFile(VolumePath.FromString("/")); }