-
-
Notifications
You must be signed in to change notification settings - Fork 153
/
Copy pathVerifyObjectSamples.cs
81 lines (70 loc) · 1.75 KB
/
VerifyObjectSamples.cs
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
// ReSharper disable NotAccessedField.Local
// Non-nullable field is uninitialized
#pragma warning disable CS8618
[TestFixture]
public class VerifyObjectSamples
{
[Test]
public Task ScopedSerializer()
{
var person = new Person
{
GivenNames = "John",
FamilyName = "Smith",
Dob = new(2000, 10, 1, 0, 0, 0, TimeSpan.Zero)
};
var settings = new VerifySettings();
settings.DontScrubDateTimes();
settings.AddExtraSettings(_ => _.DefaultValueHandling = DefaultValueHandling.Include);
return Verify(person, settings);
}
[Test]
public Task ScopedSerializerFluent()
{
var person = new Person
{
GivenNames = "John",
FamilyName = "Smith",
Dob = new(2000, 10, 1, 0, 0, 0, TimeSpan.Zero)
};
return Verify(person)
.DontScrubDateTimes()
.AddExtraSettings(_ => _.DefaultValueHandling = DefaultValueHandling.Include);
}
#region AnonNUnit
[Test]
public Task Anon()
{
var person1 = new Person
{
GivenNames = "John",
FamilyName = "Smith"
};
var person2 = new Person
{
GivenNames = "Marianne",
FamilyName = "Aguirre"
};
return Verify(
new
{
person1,
person2
});
}
#endregion
class Person
{
public string GivenNames;
public string FamilyName;
public string Spouse;
public Address Address;
public DateTimeOffset Dob;
}
class Address
{
public string Street;
public string Country;
public string Suburb;
}
}