forked from ServiceStack/ServiceStack.Text
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathQueryStringWriterTests.cs
More file actions
86 lines (72 loc) · 3.16 KB
/
QueryStringWriterTests.cs
File metadata and controls
86 lines (72 loc) · 3.16 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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
using System;
using System.Collections.Generic;
using NUnit.Framework;
using ServiceStack.Common.Tests.Models;
namespace ServiceStack.Text.Tests
{
[TestFixture]
public class QueryStringWriterTests
{
[Test]
public void Can_Write_QueryString()
{
Movie newMovie = new Movie
{
Id = "tt0110912",
Title = "Pulp Fiction",
Rating = 8.9m,
Director = "Quentin Tarantino",
ReleaseDate = new DateTime(1994, 10, 24),
TagLine = "Girls like me don't make invitations like this to just anyone!",
Genres = new List<string> { "Crime", "Drama", "Thriller" },
};
var queryString = QueryStringSerializer.SerializeToString(newMovie);
queryString.Print();
Assert.That(queryString,
Is.EqualTo("Id=tt0110912&Title=Pulp+Fiction&Rating=8.9&Director=Quentin+Tarantino&ReleaseDate=1994-10-24&TagLine=Girls+like+me+don%27t+make+invitations+like+this+to+just+anyone%21&Genres=Crime,Drama,Thriller"));
}
[Test]
public void Can_write_dictionary_to_QueryString()
{
var map = new Dictionary<string, string>
{
{"Id","tt0110912"},
{"Title","Pulp Fiction"},
{"Rating","8.9"},
{"Director","Quentin Tarantino"},
{"ReleaseDate","1994-10-24"},
{"TagLine","Girls like me don't make invitations like this to just anyone!"},
{"Genres","Crime,Drama,Thriller"},
};
var queryString = QueryStringSerializer.SerializeToString(map);
queryString.Print();
Assert.That(queryString,
Is.EqualTo("Id=tt0110912&Title=Pulp+Fiction&Rating=8.9&Director=Quentin+Tarantino&ReleaseDate=1994-10-24&TagLine=Girls+like+me+don%27t+make+invitations+like+this+to+just+anyone%21&Genres=%22Crime,Drama,Thriller%22"));
}
[Test]
public void Can_write_AnonymousType_to_QueryString()
{
var anonType = new
{
Id = "tt0110912",
Title = "Pulp Fiction",
Rating = 8.9m,
Director = "Quentin Tarantino",
ReleaseDate = new DateTime(1994, 10, 24),
TagLine = "Girls like me don't make invitations like this to just anyone!",
Genres = new List<string> { "Crime", "Drama", "Thriller" },
};
var queryString = QueryStringSerializer.SerializeToString(anonType);
queryString.Print();
Assert.That(queryString,
Is.EqualTo("Id=tt0110912&Title=Pulp+Fiction&Rating=8.9&Director=Quentin+Tarantino&ReleaseDate=1994-10-24&TagLine=Girls+like+me+don%27t+make+invitations+like+this+to+just+anyone%21&Genres=Crime,Drama,Thriller"));
}
[Test]
public void Can_write_string_to_QueryString()
{
var str = "title=Pulp Fiction";
var queryString = QueryStringSerializer.SerializeToString(str);
queryString.Print();
}
}
}