QueryBuilder Add overload for IEnumerable.
This commit is contained in:
parent
af279f6d2b
commit
7be9cefc4c
|
|
@ -14,16 +14,24 @@ namespace Microsoft.AspNet.WebUtilities
|
|||
{
|
||||
private IList<KeyValuePair<string, string>> _params;
|
||||
|
||||
public QueryBuilder()
|
||||
{
|
||||
public QueryBuilder()
|
||||
{
|
||||
_params = new List<KeyValuePair<string, string>>();
|
||||
}
|
||||
}
|
||||
|
||||
public QueryBuilder(IEnumerable<KeyValuePair<string, string>> parameters)
|
||||
{
|
||||
_params = new List<KeyValuePair<string, string>>(parameters);
|
||||
}
|
||||
|
||||
public void Add(string key, IEnumerable<string> values)
|
||||
{
|
||||
foreach (var value in values)
|
||||
{
|
||||
_params.Add(new KeyValuePair<string, string>(key, value));
|
||||
}
|
||||
}
|
||||
|
||||
public void Add(string key, string value)
|
||||
{
|
||||
_params.Add(new KeyValuePair<string, string>(key, value));
|
||||
|
|
|
|||
|
|
@ -50,6 +50,14 @@ namespace Microsoft.AspNet.WebUtilities
|
|||
Assert.Equal("?key1=value1&key2=value2&key3=value3", builder.ToString());
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void AddIEnumerableValues_AddedInOrder()
|
||||
{
|
||||
var builder = new QueryBuilder();
|
||||
builder.Add("key", new[] { "value1", "value2", "value3" });
|
||||
Assert.Equal("?key=value1&key=value2&key=value3", builder.ToString());
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void AddMultipleValuesViaConstructor_AddedInOrder()
|
||||
{
|
||||
|
|
@ -73,5 +81,18 @@ namespace Microsoft.AspNet.WebUtilities
|
|||
};
|
||||
Assert.Equal("?key1=value1&key2=value2&key3=value3", builder.ToString());
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void CopyViaConstructor_AddedInOrder()
|
||||
{
|
||||
var builder = new QueryBuilder()
|
||||
{
|
||||
{ "key1", "value1" },
|
||||
{ "key2", "value2" },
|
||||
{ "key3", "value3" },
|
||||
};
|
||||
var builder1 = new QueryBuilder(builder);
|
||||
Assert.Equal("?key1=value1&key2=value2&key3=value3", builder1.ToString());
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue