public void ReplaceFileFail() { var mountfs = new MountFileSystem(); var memfs1 = new MemoryFileSystem(); memfs1.WriteAllText("/file.txt", "content1"); var memfs2 = new MemoryFileSystem(); memfs2.WriteAllText("/file2.txt", "content1"); mountfs.Mount("/dir1", memfs1); mountfs.Mount("/dir2", memfs2); Assert.Throws <FileNotFoundException>(() => mountfs.ReplaceFile("/dir1/file.txt", "/dir1/to.txt", "/dir1/to.bak", true)); Assert.Throws <FileNotFoundException>(() => mountfs.ReplaceFile("/dir1/to.txt", "/dir1/file.txt", "/dir1/to.bak", true)); Assert.Throws <NotSupportedException>(() => mountfs.ReplaceFile("/dir1/file.txt", "/dir2/file2.txt", null, true)); }