Skip to content

Commit a9e2d31

Browse files
committed
Moved to .NET Core with support for .NET 3.5, .NET Core
1 parent 8352190 commit a9e2d31

File tree

85 files changed

+16504
-55
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

85 files changed

+16504
-55
lines changed
Lines changed: 125 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,125 @@
1+
using Xunit;
2+
using ObjectFiller.Test.TestPoco.Person;
3+
using Tynamix.ObjectFiller;
4+
5+
namespace ObjectFiller.Test
6+
{
7+
using System.Linq;
8+
9+
10+
public class AddressFillingTest
11+
{
12+
[Fact]
13+
public void FillAllAddressProperties()
14+
{
15+
Filler<Address> addressFiller = new Filler<Address>();
16+
Address a = addressFiller.Create();
17+
18+
Assert.NotNull(a.City);
19+
Assert.NotNull(a.Country);
20+
Assert.NotEqual(0, a.HouseNumber);
21+
Assert.NotNull(a.PostalCode);
22+
Assert.NotNull(a.Street);
23+
}
24+
25+
[Fact]
26+
public void IgnoreCountry()
27+
{
28+
Filler<Address> addressFiller = new Filler<Address>();
29+
addressFiller.Setup()
30+
.OnProperty(x => x.Country).IgnoreIt();
31+
Address a = addressFiller.Create();
32+
33+
Assert.NotNull(a.City);
34+
Assert.Null(a.Country);
35+
Assert.NotEqual(0, a.HouseNumber);
36+
Assert.NotNull(a.PostalCode);
37+
Assert.NotNull(a.Street);
38+
}
39+
40+
[Fact]
41+
public void IgnoreCountryAndCity()
42+
{
43+
Filler<Address> addressFiller = new Filler<Address>();
44+
addressFiller.Setup()
45+
.OnProperty(x => x.Country, x => x.City).IgnoreIt();
46+
Address a = addressFiller.Create();
47+
48+
Assert.Null(a.City);
49+
Assert.Null(a.Country);
50+
Assert.NotEqual(0, a.HouseNumber);
51+
Assert.NotNull(a.PostalCode);
52+
Assert.NotNull(a.Street);
53+
}
54+
55+
[Fact]
56+
public void SetupCityPropertyWithConstantValue()
57+
{
58+
Filler<Address> addressFiller = new Filler<Address>();
59+
addressFiller.Setup()
60+
.OnProperty(ad => ad.City).Use(() => "City");
61+
Address a = addressFiller.Create();
62+
63+
Assert.Equal("City", a.City);
64+
Assert.NotNull(a.Country);
65+
Assert.NotEqual(0, a.HouseNumber);
66+
Assert.NotNull(a.PostalCode);
67+
Assert.NotNull(a.Street);
68+
}
69+
70+
[Fact]
71+
public void SetupCityAndCountryPropertyWithConstantValue()
72+
{
73+
Filler<Address> addressFiller = new Filler<Address>();
74+
addressFiller.Setup()
75+
.OnProperty(ad => ad.City, ad => ad.Country).Use(() => "CityCountry");
76+
Address a = addressFiller.Create();
77+
78+
Assert.Equal("CityCountry", a.City);
79+
Assert.NotNull(a.Country);
80+
Assert.NotEqual(0, a.HouseNumber);
81+
Assert.NotNull(a.PostalCode);
82+
Assert.NotNull(a.Street);
83+
}
84+
85+
[Fact]
86+
public void SetupTheAdressWithStaticValues()
87+
{
88+
Filler<Address> addressFiller = new Filler<Address>();
89+
addressFiller.Setup()
90+
.OnType<int>().Use(10)
91+
.OnProperty(x => x.City).Use("Dresden")
92+
.OnProperty(x => x.Country).Use("Germany")
93+
.OnProperty(x => x.PostalCode).Use(() => "0011100");
94+
95+
var address = addressFiller.Create();
96+
Assert.Equal("Dresden", address.City);
97+
Assert.Equal("Germany", address.Country);
98+
Assert.Equal("0011100", address.PostalCode);
99+
Assert.Equal(10, address.HouseNumber);
100+
}
101+
102+
[Fact]
103+
public void RandomListPluginShallReturnDifferentValues()
104+
{
105+
Filler<Address> addressFiller = new Filler<Address>();
106+
107+
addressFiller.Setup().OnProperty(x => x.City).Use(new RandomListItem<string>("Test1", "Test2"));
108+
109+
var addresses = addressFiller.Create(1000);
110+
111+
Assert.True(addresses.Any(x => x.City == "Test2"));
112+
113+
addressFiller = new Filler<Address>();
114+
115+
addressFiller.Setup().OnProperty(x => x.City).Use(new RandomListItem<string>("Test1"));
116+
117+
addresses = addressFiller.Create(1000);
118+
119+
Assert.True(addresses.All(x => x.City == "Test1"));
120+
121+
}
122+
123+
124+
}
125+
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
namespace ObjectFiller.Test
2+
{
3+
using Xunit;
4+
5+
using Tynamix.ObjectFiller;
6+
7+
8+
public class CityNamesPluginTest
9+
{
10+
[Fact]
11+
public void RandomNameIsReturned()
12+
{
13+
var sut = new CityName();
14+
var value = sut.GetValue();
15+
16+
Assert.False(string.IsNullOrEmpty(value));
17+
}
18+
}
19+
}
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
using System;
2+
using Xunit;
3+
using Tynamix.ObjectFiller;
4+
5+
namespace ObjectFiller.Test
6+
{
7+
8+
public class CopyConstructorTest
9+
{
10+
11+
[Fact]
12+
public void WhenClassWithCopyConstructorIsCreatedNoExceptionShallBeThrown()
13+
{
14+
var f = new Filler<ClassWithCopyConstructorAndNormalConstructor>();
15+
var cc = f.Create();
16+
17+
Assert.NotNull(cc);
18+
}
19+
20+
[Fact]
21+
public void WhenClassWithJustCopyConstructorIsCreatedAExceptionShallBeThrown()
22+
{
23+
var f = new Filler<ClassWithCopyConstructor>();
24+
Assert.Throws<InvalidOperationException>(() => f.Create());
25+
26+
}
27+
}
28+
29+
public class ClassWithCopyConstructor
30+
{
31+
32+
public ClassWithCopyConstructor(ClassWithCopyConstructor constructor)
33+
{
34+
Count1 = constructor.Count1;
35+
Count2 = constructor.Count2;
36+
}
37+
38+
public int Count1 { get; set; }
39+
40+
public int Count2 { get; set; }
41+
}
42+
43+
44+
public class ClassWithCopyConstructorAndNormalConstructor
45+
{
46+
public ClassWithCopyConstructorAndNormalConstructor(int count1, int count2)
47+
{
48+
Count1 = count1;
49+
Count2 = count2;
50+
}
51+
52+
public ClassWithCopyConstructorAndNormalConstructor(ClassWithCopyConstructorAndNormalConstructor constructor)
53+
: this(constructor.Count1, constructor.Count2)
54+
{
55+
56+
}
57+
58+
public int Count1 { get; set; }
59+
60+
public int Count2 { get; set; }
61+
}
62+
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
namespace ObjectFiller.Test
2+
{
3+
using Xunit;
4+
5+
using Tynamix.ObjectFiller;
6+
7+
8+
public class CountryNamesPlugin
9+
{
10+
[Fact]
11+
public void RandomNameIsReturned()
12+
{
13+
var sut = new CountryName();
14+
var value = sut.GetValue();
15+
16+
Assert.False(string.IsNullOrEmpty(value));
17+
}
18+
}
19+
}
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
using System.Collections.Generic;
2+
using System.Linq;
3+
using Xunit;
4+
using Tynamix.ObjectFiller;
5+
6+
namespace ObjectFiller.Test
7+
{
8+
9+
public abstract class Parent
10+
{
11+
public Parent(int id)
12+
{
13+
Id = id;
14+
}
15+
16+
public int Id { get; set; }
17+
18+
}
19+
20+
public class ChildOne : Parent
21+
{
22+
public ChildOne(int id)
23+
: base(id)
24+
{
25+
}
26+
27+
public string Name { get; set; }
28+
}
29+
30+
public class ChildTwo : Parent
31+
{
32+
public ChildTwo(int id)
33+
: base(id)
34+
{
35+
}
36+
37+
public string OtherName { get; set; }
38+
}
39+
40+
public class ParentOfParent
41+
{
42+
public ParentOfParent()
43+
{
44+
Parents = new List<Parent>();
45+
}
46+
47+
public List<Parent> Parents { get; private set; }
48+
49+
}
50+
51+
52+
53+
public class CreateInstanceTest
54+
{
55+
56+
[Fact]
57+
public void TestCreateInstanceOfChildOne()
58+
{
59+
Filler<ParentOfParent> p = new Filler<ParentOfParent>();
60+
61+
p.Setup().OnType<Parent>().CreateInstanceOf<ChildOne>()
62+
.SetupFor<ChildOne>()
63+
.OnProperty(x => x.Name).Use(() => "TEST");
64+
65+
var pop = p.Create();
66+
67+
Assert.NotNull(pop);
68+
Assert.NotNull(pop.Parents);
69+
Assert.True(pop.Parents.All(x => x is ChildOne));
70+
Assert.False(pop.Parents.Any(x => x is ChildTwo));
71+
72+
Assert.True(pop.Parents.Cast<ChildOne>().All(x => x.Name == "TEST"));
73+
74+
75+
}
76+
77+
}
78+
}
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
namespace ObjectFiller.Test
2+
{
3+
using System;
4+
using System.Linq;
5+
6+
using Xunit;
7+
8+
using Tynamix.ObjectFiller;
9+
10+
public class DateRangeTestClass
11+
{
12+
public DateTime Date { get; set; }
13+
}
14+
15+
16+
public class DateTimeRangeTest
17+
{
18+
[Fact]
19+
public void WhenGettingDatesBetweenNowAnd31DaysAgo()
20+
{
21+
Filler<DateRangeTestClass> filler = new Filler<DateRangeTestClass>();
22+
23+
filler.Setup().OnType<DateTime>().Use(
24+
new DateTimeRange(DateTime.Now.AddDays(-31)));
25+
26+
var d = filler.Create(1000);
27+
28+
Assert.True(d.All(x => x.Date < DateTime.Now && x.Date > DateTime.Now.AddDays(-31)));
29+
}
30+
31+
[Fact]
32+
public void WhenStartDateIsBiggerThenEndDateTheDatesShouldBeSwitched()
33+
{
34+
Filler<DateRangeTestClass> filler = new Filler<DateRangeTestClass>();
35+
36+
filler.Setup().OnType<DateTime>().Use(
37+
new DateTimeRange(DateTime.Now, DateTime.Now.AddDays(-31)));
38+
39+
var d = filler.Create(1000);
40+
41+
Assert.True(d.All(x => x.Date < DateTime.Now && x.Date > DateTime.Now.AddDays(-31)));
42+
}
43+
44+
[Fact]
45+
public void WhenStartDateAndEndDateIsSetItShouldFindOnlyDatesInBetweenThisTwoDates()
46+
{
47+
var startDate = new DateTime(2000, 11, 10);
48+
var endDate = new DateTime(2006, 1, 30);
49+
50+
Filler<DateRangeTestClass> filler = new Filler<DateRangeTestClass>();
51+
52+
filler.Setup().OnType<DateTime>().Use(new DateTimeRange(startDate, endDate));
53+
54+
var d = filler.Create(1000);
55+
d.ToList().ForEach(x => Console.WriteLine(x.Date));
56+
Assert.True(d.All(x => x.Date < endDate && x.Date > startDate));
57+
}
58+
59+
[Fact]
60+
public void WhenConstructorWithDateTimeNowWillBeCalledNoExceptionShouldBeThrown()
61+
{
62+
Filler<DateRangeTestClass> filler = new Filler<DateRangeTestClass>();
63+
64+
filler.Setup().OnProperty(x => x.Date).Use(new DateTimeRange(DateTime.Now));
65+
66+
var dateTime = filler.Create();
67+
68+
Assert.True(dateTime.Date > DateTime.MinValue);
69+
Assert.True(dateTime.Date < DateTime.MaxValue);
70+
}
71+
}
72+
}

0 commit comments

Comments
 (0)