Пример #1
0
        public void Add_no_parameters_to_uri()
        {
            var link = new Link()
            {
                Target = new Uri("http://example/customer")
            };

            link.AddParametersAsTemplate();

            var resolvedTarget = link.GetResolvedTarget().OriginalString;
            Assert.Equal("http://example/customer", resolvedTarget);
        }
Пример #2
0
        public void Add_parameters_to_uri_with_query_string()
        {
            var link = new Link()
            {
                Target = new Uri("http://example/customer?view=true")
            };

            link.SetParameter("id", 99);

            link.AddParametersAsTemplate();

            var resolvedTarget = link.GetResolvedTarget().OriginalString;
            Assert.Equal("http://example/customer?view=true&id=99", resolvedTarget);
        }
Пример #3
0
        public void Add_multiple_parameters_to_uri()
        {
            var link = new Link()
            {
                Target = new Uri("http://example/customer")
            };

            link.SetParameter("id", 99);
            link.SetParameter("view", false);

            link.AddParametersAsTemplate();

            var resolvedTarget = link.GetResolvedTarget().OriginalString;
            Assert.Equal("http://example/customer?id=99&view=False", resolvedTarget);
        }
Пример #4
0
        public void Change_an_existing_parameter()
        {
            var link = new Link()
            {
                Target = new Uri("http://example/customer?view=False")
            };

            link.SetParameter("view",true);

            link.AddParametersAsTemplate(true);

            var resolvedTarget = link.GetResolvedTarget().OriginalString;
            Assert.Equal("http://example/customer?view=True", resolvedTarget);
        }
Пример #5
0
        public void Add_parameters_to_uri_with_query_string_ignoring_path_parameter()
        {
            var link = new Link()
            {
                Target = new Uri("http://example/customer/{id}?view=true")
            };

            link.SetParameter("id", 99);
            link.SetParameter("context", "detail");

            link.AddParametersAsTemplate();

            var resolvedTarget = link.GetResolvedTarget().OriginalString;
            Assert.Equal("http://example/customer/99?view=true&context=detail", resolvedTarget);
        }
Пример #6
0
        public void Update_existing_parameters_in_query_string()
        {
            var link = new Link()
            {
                Target = new Uri("http://example/customer?view=true")
            };

            link.SetParameter("view", false);

            link.AddParametersAsTemplate();

            var resolvedTarget = link.GetResolvedTarget().OriginalString;
            Assert.Equal("http://example/customer?view=False", resolvedTarget);
        }
Пример #7
0
        public void Change_an_existing_parameter_within_multiple()
        {
            var link = new Link()
            {
                Target = new Uri("http://example/customer?view=False&foo=bar")
            };

            link.CreateParametersFromQueryString();

            link.SetParameter("view", true);

            link.AddParametersAsTemplate(true);

            var resolvedTarget = link.GetResolvedTarget().OriginalString;
            Assert.Equal("http://example/customer?view=True&foo=bar", resolvedTarget);
        }