@@ -13,6 +13,7 @@ public class ChallengeResultAssertions_Tests
13
13
{
14
14
public const string Reason = FailureMessageHelper . Reason ;
15
15
public readonly static object [ ] ReasonArgs = FailureMessageHelper . ReasonArgs ;
16
+ private readonly DateTimeOffset ? TestLastModified = DateTimeOffset . Parse ( "2020-04-28 15:48:33.6672395 +2" , CultureInfo . InvariantCulture ) ;
16
17
17
18
[ Fact ]
18
19
public void WithAuthenticationProperties_GivenExpected_ShouldPass ( )
@@ -107,7 +108,7 @@ public void WithRedirectUri_GivenUnexpected_ShouldFail()
107
108
[ Fact ]
108
109
public void WithIssuedUtc_GivenExpected_ShouldPass ( )
109
110
{
110
- var actualIssuedUtc = DateTimeOffset . Now ;
111
+ var actualIssuedUtc = TestLastModified ;
111
112
var actualAuthenticationProperties = new AuthenticationProperties { IssuedUtc = actualIssuedUtc } ;
112
113
ActionResult result = new ChallengeResult ( actualAuthenticationProperties ) ;
113
114
@@ -128,12 +129,12 @@ public void WithIssuedUtc_GivenNull_ShouldPass()
128
129
[ Fact ]
129
130
public void WithIssuedUtc_GivenUnexpected_ShouldFail ( )
130
131
{
131
- var actualIssuedUtc = DateTimeOffset . Now ;
132
- var expectedIssuedUtc = DateTimeOffset . Now . AddSeconds ( 1 ) ;
132
+ var actualIssuedUtc = TestLastModified ;
133
+ var expectedIssuedUtc = TestLastModified . Value . AddSeconds ( 1 ) ;
133
134
var actualAuthenticationProperties = new AuthenticationProperties { IssuedUtc = actualIssuedUtc } ;
134
135
ActionResult result = new ChallengeResult ( actualAuthenticationProperties ) ;
135
- var convertedExpectedIssuedUtc = GetConvertedDateTimeOffset ( expectedIssuedUtc ) ;
136
- var convertedActualIssuedUtc = GetConvertedDateTimeOffset ( actualIssuedUtc ) ;
136
+ var convertedExpectedIssuedUtc = FailureMessageHelper . RoundToSeconds ( expectedIssuedUtc ) ;
137
+ var convertedActualIssuedUtc = FailureMessageHelper . RoundToSeconds ( actualIssuedUtc ) ;
137
138
var failureMessage = FailureMessageHelper . ExpectedContextToBeXButY ( "ChallengeResult.AuthenticationProperties.IssuedUtc" , convertedExpectedIssuedUtc , convertedActualIssuedUtc ) ;
138
139
139
140
Action a = ( ) => result . Should ( ) . BeChallengeResult ( ) . WithIssuedUtc ( expectedIssuedUtc , Reason , ReasonArgs ) ;
@@ -145,10 +146,10 @@ public void WithIssuedUtc_GivenUnexpected_ShouldFail()
145
146
public void WithIssuedUtc_GivenNull_For_Actual_ShouldFail ( )
146
147
{
147
148
var actualIssuedUtc = null as DateTimeOffset ? ;
148
- var expectedIssuedUtc = DateTimeOffset . Now ;
149
+ var expectedIssuedUtc = TestLastModified ;
149
150
var actualAuthenticationProperties = new AuthenticationProperties { IssuedUtc = actualIssuedUtc } ;
150
151
ActionResult result = new ChallengeResult ( actualAuthenticationProperties ) ;
151
- var convertedExpectedIssuedUtc = GetConvertedDateTimeOffset ( expectedIssuedUtc ) ;
152
+ var convertedExpectedIssuedUtc = FailureMessageHelper . RoundToSeconds ( expectedIssuedUtc ) ;
152
153
var failureMessage = FailureMessageHelper . ExpectedContextToBeXButY ( "ChallengeResult.AuthenticationProperties.IssuedUtc" , convertedExpectedIssuedUtc , null ) ;
153
154
154
155
Action a = ( ) => result . Should ( ) . BeChallengeResult ( ) . WithIssuedUtc ( expectedIssuedUtc , Reason , ReasonArgs ) ;
@@ -159,11 +160,11 @@ public void WithIssuedUtc_GivenNull_For_Actual_ShouldFail()
159
160
[ Fact ]
160
161
public void WithIssuedUtc_GivenNull_For_Expected_ShouldFail ( )
161
162
{
162
- var actualIssuedUtc = DateTimeOffset . Now ;
163
+ var actualIssuedUtc = TestLastModified ;
163
164
var expectedIssuedUtc = null as DateTimeOffset ? ;
164
165
var actualAuthenticationProperties = new AuthenticationProperties { IssuedUtc = actualIssuedUtc } ;
165
166
ActionResult result = new ChallengeResult ( actualAuthenticationProperties ) ;
166
- var convertedActualIssuedUtc = GetConvertedDateTimeOffset ( actualIssuedUtc ) ;
167
+ var convertedActualIssuedUtc = FailureMessageHelper . RoundToSeconds ( actualIssuedUtc ) ;
167
168
var failureMessage = FailureMessageHelper . ExpectedContextToBeXButY ( "ChallengeResult.AuthenticationProperties.IssuedUtc" , null , convertedActualIssuedUtc ) ;
168
169
169
170
Action a = ( ) => result . Should ( ) . BeChallengeResult ( ) . WithIssuedUtc ( expectedIssuedUtc , Reason , ReasonArgs ) ;
@@ -174,7 +175,7 @@ public void WithIssuedUtc_GivenNull_For_Expected_ShouldFail()
174
175
[ Fact ]
175
176
public void WithExpiresUtc_GivenExpected_ShouldPass ( )
176
177
{
177
- var actualExpiresUtc = DateTimeOffset . Now ;
178
+ var actualExpiresUtc = TestLastModified ;
178
179
var actualAuthenticationProperties = new AuthenticationProperties { ExpiresUtc = actualExpiresUtc } ;
179
180
ActionResult result = new ChallengeResult ( actualAuthenticationProperties ) ;
180
181
@@ -195,12 +196,12 @@ public void WithExpiresUtc_GivenNull_ShouldPass()
195
196
[ Fact ]
196
197
public void WithExpiresUtc_GivenUnexpected_ShouldFail ( )
197
198
{
198
- var actualExpiresUtc = DateTimeOffset . Now ;
199
- var expectedExpiresUtc = DateTimeOffset . Now . AddSeconds ( 1 ) ;
199
+ var actualExpiresUtc = TestLastModified ;
200
+ var expectedExpiresUtc = TestLastModified . Value . AddSeconds ( 1 ) ;
200
201
var actualAuthenticationProperties = new AuthenticationProperties { ExpiresUtc = actualExpiresUtc } ;
201
202
ActionResult result = new ChallengeResult ( actualAuthenticationProperties ) ;
202
- var convertedExpectedExpiresUtc = GetConvertedDateTimeOffset ( expectedExpiresUtc ) ;
203
- var convertedActualExpiresUtc = GetConvertedDateTimeOffset ( actualExpiresUtc ) ;
203
+ var convertedExpectedExpiresUtc = FailureMessageHelper . RoundToSeconds ( expectedExpiresUtc ) ;
204
+ var convertedActualExpiresUtc = FailureMessageHelper . RoundToSeconds ( actualExpiresUtc ) ;
204
205
var failureMessage = FailureMessageHelper . ExpectedContextToBeXButY ( "ChallengeResult.AuthenticationProperties.ExpiresUtc" , convertedExpectedExpiresUtc , convertedActualExpiresUtc ) ;
205
206
206
207
Action a = ( ) => result . Should ( ) . BeChallengeResult ( ) . WithExpiresUtc ( expectedExpiresUtc , Reason , ReasonArgs ) ;
@@ -212,10 +213,10 @@ public void WithExpiresUtc_GivenUnexpected_ShouldFail()
212
213
public void WithExpiresUtc_GivenNull_For_Actual_ShouldFail ( )
213
214
{
214
215
var actualExpiresUtc = null as DateTimeOffset ? ;
215
- var expectedExpiresUtc = DateTimeOffset . Now ;
216
+ var expectedExpiresUtc = TestLastModified ;
216
217
var actualAuthenticationProperties = new AuthenticationProperties { ExpiresUtc = actualExpiresUtc } ;
217
218
ActionResult result = new ChallengeResult ( actualAuthenticationProperties ) ;
218
- var convertedExpectedExpiresUtc = GetConvertedDateTimeOffset ( expectedExpiresUtc ) ;
219
+ var convertedExpectedExpiresUtc = FailureMessageHelper . RoundToSeconds ( expectedExpiresUtc ) ;
219
220
var failureMessage = FailureMessageHelper . ExpectedContextToBeXButY ( "ChallengeResult.AuthenticationProperties.ExpiresUtc" , convertedExpectedExpiresUtc , null ) ;
220
221
221
222
Action a = ( ) => result . Should ( ) . BeChallengeResult ( ) . WithExpiresUtc ( expectedExpiresUtc , Reason , ReasonArgs ) ;
@@ -226,11 +227,11 @@ public void WithExpiresUtc_GivenNull_For_Actual_ShouldFail()
226
227
[ Fact ]
227
228
public void WithExpiresUtc_GivenNull_For_Expected_ShouldFail ( )
228
229
{
229
- var actualExpiresUtc = DateTimeOffset . Now ;
230
+ var actualExpiresUtc = TestLastModified ;
230
231
var expectedExpiresUtc = null as DateTimeOffset ? ;
231
232
var actualAuthenticationProperties = new AuthenticationProperties { ExpiresUtc = actualExpiresUtc } ;
232
233
ActionResult result = new ChallengeResult ( actualAuthenticationProperties ) ;
233
- var convertedActualExpiresUtc = GetConvertedDateTimeOffset ( actualExpiresUtc ) ;
234
+ var convertedActualExpiresUtc = FailureMessageHelper . RoundToSeconds ( actualExpiresUtc ) ;
234
235
var failureMessage = FailureMessageHelper . ExpectedContextToBeXButY ( "ChallengeResult.AuthenticationProperties.ExpiresUtc" , null , convertedActualExpiresUtc ) ;
235
236
236
237
Action a = ( ) => result . Should ( ) . BeChallengeResult ( ) . WithExpiresUtc ( expectedExpiresUtc , Reason , ReasonArgs ) ;
@@ -337,15 +338,5 @@ public void ContainsScheme_GivenUnexpected_ShouldFail()
337
338
338
339
a . Should ( ) . Throw < Exception > ( ) . WithMessage ( failureMessage ) ;
339
340
}
340
-
341
- // DateTimeOffset is stored as string and converted back in ASP.NET Core Framework
342
- private DateTimeOffset ? GetConvertedDateTimeOffset ( DateTimeOffset value )
343
- {
344
- var expectedIssuedUtcAsString = value . ToString ( "r" , CultureInfo . InvariantCulture ) ;
345
-
346
- return DateTimeOffset . TryParseExact ( expectedIssuedUtcAsString , "r" , CultureInfo . InvariantCulture , DateTimeStyles . RoundtripKind , out var result )
347
- ? new DateTimeOffset ? ( result )
348
- : new DateTimeOffset ? ( ) ;
349
- }
350
341
}
351
342
}
0 commit comments