public void AppendingQueryParameters_HavingNone_DoesNotAppendQueryParameters()
        {
            // Arrange
            var queryParameters = new QueryParameters(new List <QueryParameter>());
            var sb = new StringBuilder();

            // Act
            queryParameters.AppendQueryParameters(sb);

            // Assert
            var actualString = sb.ToString();

            Assert.IsEmpty(actualString);
        }
        public void AppendingQueryParameters_HavingQueryParameters_WithoutValues_DoesNotAppendQueryParameters()
        {
            // Arrange
            var queryParamsList = new List <QueryParameter> {
                new QueryParameter("Key1")
            };

            var queryParameters = new QueryParameters(queryParamsList);
            var sb = new StringBuilder();

            // Act
            queryParameters.AppendQueryParameters(sb);

            // Assert
            var actualString = sb.ToString();

            Assert.IsEmpty(actualString);
        }
        public void AppendingQueryParameters_HavingQueryParameters_WithValues_AppendsQueryParameters()
        {
            // Arrange
            var queryParamsList = new List <QueryParameter> {
                new QueryParameter("Key1", "Val1", "Val2"), new QueryParameter("Key2", "Val3")
            };

            const string ExpectedQueryParamStr = "?Key1=Val1&Key1=Val2&Key2=Val3";

            var queryParameters = new QueryParameters(queryParamsList);
            var sb = new StringBuilder();

            // Act
            queryParameters.AppendQueryParameters(sb);

            // Assert
            var actualString = sb.ToString();

            Assert.IsNotEmpty(actualString);
            Assert.AreEqual(ExpectedQueryParamStr, actualString);
        }