@@ -8,6 +8,38 @@ namespace Tocsoft.DateTimeAbstractions.Tests
88{
99 public class AsyncScoppedClock
1010 {
11+ [ Fact ]
12+ public void LocalTimeConfiguredStaticProviderNowAlwausReturnsLocalTime ( )
13+ {
14+ var p = new StaticDateTimeProvider ( new DateTime ( 2000 , 01 , 01 , 1 , 2 , 3 , DateTimeKind . Local ) ) ;
15+ var localTime = p . Now ( ) ;
16+ Assert . Equal ( DateTimeKind . Local , localTime . Kind ) ;
17+ }
18+
19+ [ Fact ]
20+ public void UtcTimeConfiguredStaticProviderNowAlwausReturnsLocalTime ( )
21+ {
22+ var p = new StaticDateTimeProvider ( new DateTime ( 2000 , 01 , 01 , 1 , 2 , 3 , DateTimeKind . Utc ) ) ;
23+ var localTime = p . Now ( ) ;
24+ Assert . Equal ( DateTimeKind . Local , localTime . Kind ) ;
25+ }
26+
27+ [ Fact ]
28+ public void LocalTimeConfiguredStaticProviderUtcNowAlwausReturnsUtcTime ( )
29+ {
30+ var p = new StaticDateTimeProvider ( new DateTime ( 2000 , 01 , 01 , 1 , 2 , 3 , DateTimeKind . Local ) ) ;
31+ var localTime = p . UtcNow ( ) ;
32+ Assert . Equal ( DateTimeKind . Utc , localTime . Kind ) ;
33+ }
34+
35+ [ Fact ]
36+ public void UtcTimeConfiguredStaticProviderUtcNowAlwausReturnsUtcTime ( )
37+ {
38+ var p = new StaticDateTimeProvider ( new DateTime ( 2000 , 01 , 01 , 1 , 2 , 3 , DateTimeKind . Utc ) ) ;
39+ var localTime = p . UtcNow ( ) ;
40+ Assert . Equal ( DateTimeKind . Utc , localTime . Kind ) ;
41+ }
42+
1143 [ Theory ]
1244 [ InlineData ( 1 ) ]
1345 [ InlineData ( 100 ) ]
@@ -64,8 +96,6 @@ private async Task RunTest(int count)
6496 // we move away from the pinned after the using statement
6597 Assert . NotEqual ( date , Clock . Now ) ;
6698
67- Clock . DefaultProvider = new UtcCurrentDateTimeProvider ( ) ;
68-
6999 using ( Clock . Pin ( new StaticDateTimeProvider ( date ) ) )
70100 {
71101 var task1 = DelayedNow ( true ) ;
@@ -102,15 +132,15 @@ public async Task PinSubContext()
102132
103133 public async Task < DateTime > DelayedNow ( bool continueOnCapturedContext )
104134 {
105- await Task . Delay ( 1 ) . ConfigureAwait ( continueOnCapturedContext ) ; // to force a propert delay
135+ await Task . Delay ( 1 ) . ConfigureAwait ( continueOnCapturedContext ) ; // to force a proper delay
106136 return Clock . Now ;
107137 }
108138
109139 public async Task < DateTime > DelayedDate ( DateTime pinnedDate )
110140 {
111141 using ( Clock . Pin ( new StaticDateTimeProvider ( pinnedDate ) ) )
112142 {
113- await Task . Delay ( 1 ) ; // to force a propert delay
143+ await Task . Delay ( 1 ) ; // to force a proper delay
114144 return Clock . Now ;
115145 }
116146 }
0 commit comments