Пример #1
0
        public void Uri_ShouldReturnCorrectValue(
            [Frozen] Uri baseUri,
            HttpRequestBuilderOptions sut,
            string path,
            string path2,
            string key,
            string value)
        {
            //arrange
            //add reserved caracters to test escaping
            value += "?";
            key   += "=";
            path  += "?";
            path2 += "=";
            sut.AppendPath(path)
            .AppendPath(path2)
            .Parameter(key, value);

            //act
            var actual = sut.Uri;

            //assert
            var expected = string.Format("{0}/{1}/{2}?{3}={4}", baseUri.ToString().TrimEnd('/'), Uri.EscapeDataString(path), Uri.EscapeDataString(path2), Uri.EscapeDataString(key), Uri.EscapeDataString(value));

            actual.Should().Be(expected);
        }
Пример #2
0
        public void AppendPath_ShouldReturnSut(
            HttpRequestBuilderOptions sut,
            string expected)
        {
            //act
            var actual = sut.AppendPath(expected);

            //assert
            actual.Should().Be(sut);
        }
Пример #3
0
        public void AppendPath_WithEmptyStrings_ShouldThrow(
            string path,
            HttpRequestBuilderOptions sut
            )
        {
            //act
            Action action = () => sut.AppendPath(path);

            //assert
            action.ShouldThrow <ArgumentNullException>();
        }
Пример #4
0
        public void AppendPath_ShouldAddPath(
            HttpRequestBuilderOptions sut,
            string expected)
        {
            //arrange

            //act
            sut.AppendPath(expected);
            var actual = sut.PathFragments.Last();

            //assert
            actual.Should().Be(expected);
        }
Пример #5
0
        public void AppendPath_WithPathSeparator_ShouldAddCorrectPath(
            string path,
            string expectedPath,
            HttpRequestBuilderOptions sut
            )
        {
            //arrange

            //act
            sut.AppendPath(path);

            //assert
            var expected = expectedPath.Split('/');

            sut.PathFragments.ShouldAllBeEquivalentTo(expected);
        }
Пример #6
0
        public void Uri_WithNoParameters_ShouldReturnCorrectValue(
            [Frozen] Uri baseUri,
            HttpRequestBuilderOptions sut,
            string path,
            string path2)
        {
            //arrange
            sut.AppendPath(path)
            .AppendPath(path2);

            //act
            var actual = sut.Uri;

            //assert
            var expected = string.Format("{0}/{1}/{2}", baseUri.ToString().TrimEnd('/'), path, path2);

            actual.Should().Be(expected);
        }