-
Notifications
You must be signed in to change notification settings - Fork 411
Expand file tree
/
Copy pathQueryStringTests.cs
More file actions
44 lines (39 loc) · 1.76 KB
/
QueryStringTests.cs
File metadata and controls
44 lines (39 loc) · 1.76 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
using System;
using Docker.DotNet.Models;
using Xunit;
namespace Docker.DotNet.Tests
{
public class QueryStringTests
{
[Fact]
public void ServicesListParameters_GenerateIdFilters()
{
var p = new ServicesListParameters { Filters = new ServiceFilter { Id = new string[]{ "service-id" } } };
var qs = new QueryString<ServicesListParameters>(p);
Assert.Equal("filters={\"id\":[\"service-id\"]}", Uri.UnescapeDataString(qs.GetQueryString()));
}
[Fact]
public void ServicesListParameters_GenerateCompositeFilters()
{
var p = new ServicesListParameters { Filters = new ServiceFilter { Id = new string[] { "service-id" }, Label = new string[] { "label" } } };
var qs = new QueryString<ServicesListParameters>(p);
Assert.Equal("filters={\"id\":[\"service-id\"],\"label\":[\"label\"]}", Uri.UnescapeDataString(qs.GetQueryString()));
}
[Fact]
public void ServicesListParameters_GenerateNullFilters()
{
var p = new ServicesListParameters { Filters = new ServiceFilter() };
var qs = new QueryString<ServicesListParameters>(p);
Assert.Equal("filters={}", Uri.UnescapeDataString(qs.GetQueryString()));
}
[Fact]
public void ServicesListParameters_GenerateNullModeFilters()
{
var p = new ServicesListParameters { Filters = new ServiceFilter() { Mode = new ServiceCreationMode[] { } } };
var qs = new QueryString<ServicesListParameters>(p);
var tmp = qs.GetQueryString();
var tmp2 = Uri.UnescapeDataString(tmp);
Assert.Equal("filters={\"mode\":[]}", tmp2);
}
}
}