1- using System ;
2- using Microsoft . VisualStudio . TestTools . UnitTesting ;
3- using Moq ;
4- using PayNLSdk . API . Statistics . GetManagement ;
1+ using System ;
52using System . Collections . Generic ;
63using System . Collections . Specialized ;
74using System . Diagnostics . CodeAnalysis ;
85using System . Linq ;
6+ using NSubstitute ;
7+ using PayNLSdk . API . Statistics . GetManagement ;
8+ using Shouldly ;
9+ using Xunit ;
910
1011namespace PayNLSdk . Tests . Api . Statistics
1112{
12- [ TestClass ]
1313 [ SuppressMessage ( "ReSharper" , "RedundantNameQualifier" , Justification = "We need to be sure the correct object is called in the tests" ) ]
1414 public class GetStatsRequestTests
1515 {
16- private PayNLSdk . API . Statistics . GetManagement . Request _sut ;
16+ private readonly PayNLSdk . API . Statistics . GetManagement . Request _sut ;
1717
18- [ TestInitialize ]
19- public void TestInitialize ( )
18+ public GetStatsRequestTests ( )
2019 {
2120 _sut = new PayNLSdk . API . Statistics . GetManagement . Request ( ) ;
2221 }
2322
24- [ TestMethod ]
23+ [ Fact ]
2524 public void Ctor_FilterPropertyNotTempty_Always ( )
2625 {
2726 // Arrange
@@ -30,11 +29,11 @@ public void Ctor_FilterPropertyNotTempty_Always()
3029 // Act
3130
3231 // Assert
33- Assert . IsNotNull ( _sut . Filters ) ;
34- Assert . AreEqual ( 0 , _sut . Filters . Count ) ;
32+ _sut . Filters . ShouldNotBeNull ( ) ;
33+ _sut . Filters . Count . ShouldBe ( 0 ) ;
3534 }
3635
37- [ TestMethod ]
36+ [ Fact ]
3837 public void Ctor_GroupByPropertyNotTempty_Always ( )
3938 {
4039 // Arrange
@@ -43,11 +42,11 @@ public void Ctor_GroupByPropertyNotTempty_Always()
4342 // Act
4443
4544 // Assert
46- Assert . IsNotNull ( _sut . GroupByFieldNames ) ;
47- Assert . AreEqual ( 0 , _sut . GroupByFieldNames . Count ) ;
45+ _sut . GroupByFieldNames . ShouldNotBeNull ( ) ;
46+ _sut . GroupByFieldNames . Count . ShouldBe ( 0 ) ;
4847 }
4948
50- [ TestMethod ]
49+ [ Fact ]
5150 public void GetParameters_ContainsGroupBy_IfSortByFieldNamesPropertyIsUsed ( )
5251 {
5352 // Arrange
@@ -57,11 +56,10 @@ public void GetParameters_ContainsGroupBy_IfSortByFieldNamesPropertyIsUsed()
5756 var result = _sut . GetParameters ( ) ;
5857
5958 // Assert
60- Assert . AreEqual ( "ABC" , result . Get ( "groupBy[0]" ) ) ;
61-
59+ result . Get ( "groupBy[0]" ) . ShouldBe ( "ABC" ) ;
6260 }
6361
64- [ TestMethod ]
62+ [ Fact ]
6563 public void GetParameters_ContainsFilters_MultipleFiltersAdded ( )
6664 {
6765 // Arrange
@@ -72,70 +70,70 @@ public void GetParameters_ContainsFilters_MultipleFiltersAdded()
7270 var result = _sut . GetParameters ( ) ;
7371
7472 // Assert
75- Assert . IsTrue ( GetWithPartialKey ( result , "filterType[" ) . Contains ( "KEY1" ) ) ;
76- Assert . IsTrue ( GetWithPartialKey ( result , "filterType[" ) . Contains ( "KEY2" ) ) ;
77- Assert . IsTrue ( GetWithPartialKey ( result , "filterValue[" ) . Contains ( "VAL1" ) ) ;
78- Assert . IsTrue ( GetWithPartialKey ( result , "filterValue[" ) . Contains ( "VAL2" ) ) ;
73+ GetWithPartialKey ( result , "filterType[" ) . ShouldContain ( "KEY1" ) ;
74+ GetWithPartialKey ( result , "filterType[" ) . ShouldContain ( "KEY2" ) ;
75+ GetWithPartialKey ( result , "filterValue[" ) . ShouldContain ( "VAL1" ) ;
76+ GetWithPartialKey ( result , "filterValue[" ) . ShouldContain ( "VAL2" ) ;
7977 }
8078
81- [ TestMethod ]
79+ [ Fact ]
8280 public void Create_CorrectStartEndDate_LastWeek ( )
8381 {
8482 // Arrange
85- var dateTime = new Mock < IDateTime > ( ) ;
86- dateTime . SetupGet ( p => p . Now ) . Returns ( new DateTime ( 2018 , 12 , 11 ) ) ;
83+ var dateTime = Substitute . For < IDateTime > ( ) ;
84+ dateTime . Now . Returns ( new DateTime ( 2018 , 12 , 11 ) ) ;
8785
8886 // Act
89- var result = Request . Create ( dateTime . Object , Request . StatsPeriod . LastWeek ) ;
87+ var result = Request . Create ( dateTime , Request . StatsPeriod . LastWeek ) ;
9088
9189 // Assert
92- Assert . AreEqual ( new DateTime ( 2018 , 12 , 3 ) , result . StartDate ) ;
93- Assert . AreEqual ( new DateTime ( 2018 , 12 , 9 ) , result . EndDate ) ;
90+ result . StartDate . ShouldBe ( new DateTime ( 2018 , 12 , 3 ) ) ;
91+ result . EndDate . ShouldBe ( new DateTime ( 2018 , 12 , 9 ) ) ;
9492 }
9593
96- [ TestMethod ]
94+ [ Fact ]
9795 public void Create_CorrectStartEndDate_LastMonth ( )
9896 {
9997 // Arrange
100- var dateTime = new Mock < IDateTime > ( ) ;
101- dateTime . SetupGet ( p => p . Now ) . Returns ( new DateTime ( 2018 , 12 , 11 ) ) ;
98+ var dateTime = Substitute . For < IDateTime > ( ) ;
99+ dateTime . Now . Returns ( new DateTime ( 2018 , 12 , 11 ) ) ;
102100
103101 // Act
104- var result = Request . Create ( dateTime . Object , Request . StatsPeriod . LastMonth ) ;
102+ var result = Request . Create ( dateTime , Request . StatsPeriod . LastMonth ) ;
105103
106104 // Assert
107- Assert . AreEqual ( new DateTime ( 2018 , 11 , 1 ) , result . StartDate ) ;
108- Assert . AreEqual ( new DateTime ( 2018 , 11 , 30 ) , result . EndDate ) ;
105+ result . StartDate . ShouldBe ( new DateTime ( 2018 , 11 , 1 ) ) ;
106+ result . EndDate . ShouldBe ( new DateTime ( 2018 , 11 , 30 ) ) ;
109107 }
110108
111- [ TestMethod ]
109+ [ Fact ]
112110 public void Create_CorrectStartEndDate_ThisWeek ( )
113111 {
114112 // Arrange
115- var dateTime = new Mock < IDateTime > ( ) ;
116- dateTime . SetupGet ( p => p . Now ) . Returns ( new DateTime ( 2018 , 12 , 11 ) ) ;
113+ var dateTime = Substitute . For < IDateTime > ( ) ;
114+ dateTime . Now . Returns ( new DateTime ( 2018 , 12 , 11 ) ) ;
117115
118116 // Act
119- var result = Request . Create ( dateTime . Object , Request . StatsPeriod . ThisWeek ) ;
117+ var result = Request . Create ( dateTime , Request . StatsPeriod . ThisWeek ) ;
120118
121119 // Assert
122- Assert . AreEqual ( new DateTime ( 2018 , 12 , 10 ) , result . StartDate ) ;
123- Assert . AreEqual ( new DateTime ( 2018 , 12 , 16 ) , result . EndDate ) ;
120+ result . StartDate . ShouldBe ( new DateTime ( 2018 , 12 , 10 ) ) ;
121+ result . EndDate . ShouldBe ( new DateTime ( 2018 , 12 , 16 ) ) ;
124122 }
125123
126- [ TestMethod ]
124+ [ Fact ]
127125 public void Create_CorrectStartEndDate_ThisMonth ( )
128126 {
129127 // Arrange
130- var dateTime = new Mock < IDateTime > ( ) ;
131- dateTime . SetupGet ( p => p . Now ) . Returns ( new DateTime ( 2018 , 12 , 11 ) ) ;
128+ var dateTime = Substitute . For < IDateTime > ( ) ;
129+ dateTime . Now . Returns ( new DateTime ( 2018 , 12 , 11 ) ) ;
132130
133131 // Act
134- var result = Request . Create ( dateTime . Object , Request . StatsPeriod . ThisMonth ) ;
132+ var result = Request . Create ( dateTime , Request . StatsPeriod . ThisMonth ) ;
135133
136134 // Assert
137- Assert . AreEqual ( new DateTime ( 2018 , 12 , 1 ) , result . StartDate ) ;
138- Assert . AreEqual ( new DateTime ( 2018 , 12 , 11 ) , result . EndDate ) ;
135+ result . StartDate . ShouldBe ( new DateTime ( 2018 , 12 , 1 ) ) ;
136+ result . EndDate . ShouldBe ( new DateTime ( 2018 , 12 , 11 ) ) ;
139137 }
140138
141139 /// <summary>
0 commit comments