[RowTest()]
[Row(@"c:\fred.txt", @"c:\", "fred.txt")]
[Row(@"c:\fred.txt", @"C:\", "fred.txt")]
[Row(@"c:\fred\Tom\Bill\fred.txt", @"c:\fred\Tom\Bill", "fred.txt")]
[Row(@"c:\fred\Tom\Bill\fred.txt", @"c:\fred\Tom\Bill\", "fred.txt")]
[Row(@"c:\fred\Tom\fred.txt", @"c:\fred\Tom\Bill\", @"..\fred.txt")]
[Row(@"c:\fred\fred.txt", @"c:\fred\Tom\Bill\", @"..\..\fred.txt")]
[Row(@"c:\fred.txt", @"c:\fred\Tom\Bill\", @"..\..\..\fred.txt")]
[Row(@"c:\fred\Tom\Bill\fred.txt", @"c:\fred\", @"Tom\Bill\fred.txt")]
[Row(@"c:\fred\Tom\Bill\fred.txt", @"c:\fred", @"Tom\Bill\fred.txt")]
[Row(@"c:\fred\Tom\Bill\fred.txt", @"c:\fred\Tom\", @"Bill\fred.txt")]
[Row(@"c:\fred\Tom\Bill\fred.txt", @"c:\fred\Tom", @"Bill\fred.txt")]
[Row(@"c:\Harry\Tom\Bill\fred.txt", @"c:\fred\Tom\Bill\", @"..\..\..\Harry\Tom\Bill\fred.txt")]
[Row(@"c:\Harry\Tom\Bill\fred.txt", @"c:\fred\Tom\Bill", @"..\..\..\Harry\Tom\Bill\fred.txt")]
public void RelativePaths(string path, string root, string expected)
{ Assert.AreEqual(expected, Centivus.Net.PathExtensions.CalculateRelative(path, root));
}