public static void IsBaseOf() { http = new Uri(full_http); TestUriParser parser = new TestUriParser(); Assert.True(parser.IsBaseOf(http, http), "http-http"); Uri u = new Uri("http://www.mono-project.com/Main_Page#FAQ"); Assert.True(parser.IsBaseOf(u, http), "http-1a"); Assert.True(parser.IsBaseOf(http, u), "http-1b"); u = new Uri("http://www.mono-project.com/Main_Page"); Assert.True(parser.IsBaseOf(u, http), "http-2a"); Assert.True(parser.IsBaseOf(http, u), "http-2b"); u = new Uri("http://www.mono-project.com/"); Assert.True(parser.IsBaseOf(u, http), "http-3a"); Assert.True(parser.IsBaseOf(http, u), "http-3b"); u = new Uri("http://www.mono-project.com/Main_Page/"); Assert.False(parser.IsBaseOf(u, http), "http-4a"); Assert.True(parser.IsBaseOf(http, u), "http-4b"); // docs says the UserInfo isn't evaluated, but... u = new Uri("http://*****:*****@www.mono-project.com/Main_Page"); Assert.False(parser.IsBaseOf(u, http), "http-5a"); Assert.False(parser.IsBaseOf(http, u), "http-5b"); // scheme case sensitive ? no u = new Uri("HTTP://www.mono-project.com/Main_Page"); Assert.True(parser.IsBaseOf(u, http), "http-6a"); Assert.True(parser.IsBaseOf(http, u), "http-6b"); // host case sensitive ? no u = new Uri("http://www.Mono-Project.com/Main_Page"); Assert.True(parser.IsBaseOf(u, http), "http-7a"); Assert.True(parser.IsBaseOf(http, u), "http-7b"); // path case sensitive ? no u = new Uri("http://www.Mono-Project.com/MAIN_Page"); Assert.True(parser.IsBaseOf(u, http), "http-8a"); Assert.True(parser.IsBaseOf(http, u), "http-8b"); // different scheme u = new Uri("ftp://www.mono-project.com/Main_Page"); Assert.False(parser.IsBaseOf(u, http), "http-9a"); Assert.False(parser.IsBaseOf(http, u), "http-9b"); // different host u = new Uri("http://www.go-mono.com/Main_Page"); Assert.False(parser.IsBaseOf(u, http), "http-10a"); Assert.False(parser.IsBaseOf(http, u), "http-10b"); // different port u = new Uri("http://www.mono-project.com:8080/"); Assert.False(parser.IsBaseOf(u, http), "http-11a"); Assert.False(parser.IsBaseOf(http, u), "http-11b"); // specify default port u = new Uri("http://www.mono-project.com:80/"); Assert.True(parser.IsBaseOf(u, http), "http-12a"); Assert.True(parser.IsBaseOf(http, u), "http-12b"); }