コード例 #1
0
        public void QueryStringCanReplaceEntries()
        {
            var builder = new UrlParts(serverUtil, "home/index.ext");

            builder.QueryString["page"] = "1";

            Assert.AreEqual("home/index.ext?page=1", builder.BuildPath());

            builder.QueryString.Set("page", "2");

            Assert.AreEqual("home/index.ext?page=2", builder.BuildPath());

            builder.QueryString.Set("page", "3");

            Assert.AreEqual("home/index.ext?page=3", builder.BuildPath());
        }
コード例 #2
0
        public void PathInfoDictParse_CanHandleMissingSlash()
        {
            var builder = new UrlParts(serverUtil, "controller", "action");

            builder.PathInfoDict.Parse("State/Fl");

            Assert.AreEqual("controller/action/State/Fl", builder.BuildPath());
        }
コード例 #3
0
        public void PathInfoDictParse_AcceptsEmptyString()
        {
            var builder = new UrlParts(serverUtil, "controller", "action");

            builder.PathInfoDict.Parse("");

            Assert.AreEqual("controller/action", builder.BuildPath());
        }
コード例 #4
0
        public void BuildPathWithPathInfoDictionary()
        {
            var builder = new UrlParts(serverUtil, "controller", "action");

            builder.PathInfoDict["State"] = "FL";

            Assert.AreEqual("controller/action/State/FL", builder.BuildPath());
        }
コード例 #5
0
        public void BuildPathWithPathInfo()
        {
            var builder = new UrlParts(serverUtil, "controller", "action");

            builder.PathInfo.Add("State").Add("FL");

            Assert.AreEqual("controller/action/State/FL", builder.BuildPath());
        }
コード例 #6
0
        public void QueryStringCanHandleDuplicatedEntries()
        {
            var builder = new UrlParts(serverUtil, "home/index.ext");

            builder.SetQueryString("City=SP&State=MD&State=NY");

            Assert.AreEqual("home/index.ext?City=SP&State=MD&State=NY", builder.BuildPath());
        }
コード例 #7
0
        public void QueryStringParsesStringCorrectly()
        {
            var builder = new UrlParts(serverUtil, "home/index.ext");

            builder.QueryString["state"] = "FL";

            Assert.AreEqual("home/index.ext?state=FL", builder.BuildPath());
        }
コード例 #8
0
        public void PathInfoDictParse_CanHandleOddNumberOfEntries2()
        {
            var builder = new UrlParts(serverUtil, "controller", "action");

            builder.PathInfoDict.Parse("/State/FL/Type");

            Assert.AreEqual("controller/action/State/FL/Type", builder.BuildPath());
        }
コード例 #9
0
        public void BuildPathWithPathInfoAndQueryString()
        {
            var builder = new UrlParts(serverUtil, "controller", "action");

            builder.PathInfoDict["State"] = "FL";
            builder.SetQueryString("type=Residential");

            Assert.AreEqual("controller/action/State/FL?type=Residential", builder.BuildPath());
        }
コード例 #10
0
        public void InsertFrontPath_ShouldHandleTwoPathsWithSlash()
        {
            var builder = new UrlParts(serverUtil);

            builder.AppendPath("/something");

            builder.InsertFrontPath("http://something/else/");

            Assert.AreEqual("http://something/else/something", builder.BuildPath());
        }
コード例 #11
0
        public void InsertFrontPath_ShouldKeepExistingPath()
        {
            var builder = new UrlParts(serverUtil, "controller", "action");

            builder.PathInfo.Add("State").Add("FL");

            builder.InsertFrontPath("http://something");

            Assert.AreEqual("http://something/controller/action/State/FL", builder.BuildPath());
        }
コード例 #12
0
        public void QueryStringIsExtractedAndParsed()
        {
            var builder = new UrlParts(serverUtil, "home/index.ext");

            builder.SetQueryString("City=SP&State=MD");

            builder.QueryString["type"] = "home";

            Assert.AreEqual("home/index.ext?City=SP&State=MD&type=home", builder.BuildPath());
        }
コード例 #13
0
        public void CanBuildPathUrls()
        {
            var builder = new UrlParts(serverUtil, "controller", "action");

            Assert.AreEqual("controller/action", builder.BuildPath());
        }