Esempio n. 1
0
        public void Test_PathEquality()
        {
            //
            // RelativeFilePath
            //
            IRelativeFilePath relativeFilePath1 = @"..\Dir1\File.txt".ToRelativeFilePath();
            IRelativeFilePath relativeFilePath2 = @"..\\dir1//file.TXT".ToRelativeFilePath();

            Assert.IsTrue(relativeFilePath1.Equals(relativeFilePath2));

            relativeFilePath1 = @"..\Dir1\File.txt".ToRelativeFilePath();
            relativeFilePath2 = @".\Dir1\File.txt".ToRelativeFilePath();
            Assert.IsFalse(relativeFilePath1.Equals(relativeFilePath2));

            relativeFilePath1 = @"..\Dir1\File.txt".ToRelativeFilePath();
            relativeFilePath2 = @"..\Dir1\Dir2\File.txt".ToRelativeFilePath();
            Assert.IsFalse(relativeFilePath1.Equals(relativeFilePath2));

            relativeFilePath1 = @"..\Dir1\File.txt".ToRelativeFilePath();
            relativeFilePath2 = @"..\Dir1\File.tx".ToRelativeFilePath();
            Assert.IsFalse(relativeFilePath1.Equals(relativeFilePath2));

            //
            // AbsoluteFilePath
            //
            IAbsoluteFilePath absoluteAbsoluteFilePath1 = @"C:\Dir1\File.txt".ToAbsoluteFilePath();
            IAbsoluteFilePath absoluteAbsoluteFilePath2 = @"C:\\dir1//file.TXT".ToAbsoluteFilePath();

            Assert.IsTrue(absoluteAbsoluteFilePath1.Equals(absoluteAbsoluteFilePath2));

            absoluteAbsoluteFilePath1 = @"C:\Dir1\File.txt".ToAbsoluteFilePath();
            absoluteAbsoluteFilePath2 = @"D:\Dir1\File.txt".ToAbsoluteFilePath();
            Assert.IsFalse(absoluteAbsoluteFilePath1.Equals(absoluteAbsoluteFilePath2));

            absoluteAbsoluteFilePath1 = @"C:\Dir1\File.txt".ToAbsoluteFilePath();
            absoluteAbsoluteFilePath2 = @"C:\Dir1\Dir2\File.txt".ToAbsoluteFilePath();
            Assert.IsFalse(absoluteAbsoluteFilePath1.Equals(absoluteAbsoluteFilePath2));

            absoluteAbsoluteFilePath1 = @"C:\Dir1\File.txt".ToAbsoluteFilePath();
            absoluteAbsoluteFilePath2 = @"C:\Dir1\File.tx".ToAbsoluteFilePath();
            Assert.IsFalse(absoluteAbsoluteFilePath1.Equals(absoluteAbsoluteFilePath2));

            //
            // Mix between AbsoluteFilePath and RelativeFilePath
            //
            relativeFilePath1         = @"..\Dir1\File.txt".ToRelativeFilePath();
            absoluteAbsoluteFilePath1 = @"C:\Dir1\File.txt".ToAbsoluteFilePath();
            Assert.IsFalse(absoluteAbsoluteFilePath1.Equals(relativeFilePath1));

            //
            // Mix between absoluteDirectoryPath and filePath
            //
            IAbsoluteDirectoryPath absoluteAbsoluteDirectoryPath1 = @"C:\Dir1\File".ToAbsoluteDirectoryPath();

            absoluteAbsoluteFilePath1 = @"C:\Dir1\File".ToAbsoluteFilePath();
            Assert.IsFalse(absoluteAbsoluteDirectoryPath1.Equals(absoluteAbsoluteFilePath1));
            Assert.IsFalse(absoluteAbsoluteFilePath1.Equals(absoluteAbsoluteDirectoryPath1));

            IRelativeDirectoryPath relativeRelativeDirectoryPath1 = @"..\Dir1\File".ToRelativeDirectoryPath();

            relativeFilePath1 = @"..\Dir1\File".ToRelativeFilePath();
            Assert.IsFalse(relativeRelativeDirectoryPath1.Equals(relativeFilePath1));
            Assert.IsFalse(relativeFilePath1.Equals(relativeRelativeDirectoryPath1));
        }