@@ -24,19 +24,25 @@ public async Task StartAsync_NotifiesListenersOfExistingRazorFiles()
24
24
{
25
25
// Arrange
26
26
var args1 = new List < ( string FilePath , RazorFileChangeKind Kind ) > ( ) ;
27
- var listener1 = new Mock < IRazorFileChangeListener > ( MockBehavior . Strict ) ;
28
- listener1 . Setup ( l => l . RazorFileChanged ( It . IsAny < string > ( ) , It . IsAny < RazorFileChangeKind > ( ) ) )
29
- . Callback < string , RazorFileChangeKind > ( ( filePath , kind ) => args1 . Add ( ( filePath , kind ) ) ) ;
27
+ var listenerMock1 = new StrictMock < IRazorFileChangeListener > ( ) ;
28
+ listenerMock1
29
+ . Setup ( l => l . RazorFileChangedAsync ( It . IsAny < string > ( ) , It . IsAny < RazorFileChangeKind > ( ) , It . IsAny < CancellationToken > ( ) ) )
30
+ . Returns ( Task . CompletedTask )
31
+ . Callback ( ( string filePath , RazorFileChangeKind kind , CancellationToken _ ) => args1 . Add ( ( filePath , kind ) ) ) ;
32
+
30
33
var args2 = new List < ( string FilePath , RazorFileChangeKind Kind ) > ( ) ;
31
- var listener2 = new Mock < IRazorFileChangeListener > ( MockBehavior . Strict ) ;
32
- listener2 . Setup ( l => l . RazorFileChanged ( It . IsAny < string > ( ) , It . IsAny < RazorFileChangeKind > ( ) ) )
33
- . Callback < string , RazorFileChangeKind > ( ( filePath , kind ) => args2 . Add ( ( filePath , kind ) ) ) ;
34
- var existingRazorFiles = new [ ] { "c:/path/to/index.razor" , "c:/other/path/_Host.cshtml" } ;
34
+ var listenerMock2 = new StrictMock < IRazorFileChangeListener > ( ) ;
35
+ listenerMock2
36
+ . Setup ( l => l . RazorFileChangedAsync ( It . IsAny < string > ( ) , It . IsAny < RazorFileChangeKind > ( ) , It . IsAny < CancellationToken > ( ) ) )
37
+ . Returns ( Task . CompletedTask )
38
+ . Callback ( ( string filePath , RazorFileChangeKind kind , CancellationToken _ ) => args2 . Add ( ( filePath , kind ) ) ) ;
39
+
40
+ string [ ] existingRazorFiles = [ "c:/path/to/index.razor" , "c:/other/path/_Host.cshtml" ] ;
35
41
var cts = new CancellationTokenSource ( ) ;
36
- var detector = new TestRazorFileChangeDetector (
42
+ using var detector = new TestRazorFileChangeDetector (
37
43
cts ,
38
44
Dispatcher ,
39
- [ listener1 . Object , listener2 . Object ] ,
45
+ [ listenerMock1 . Object , listenerMock2 . Object ] ,
40
46
existingRazorFiles ) ;
41
47
42
48
// Act
@@ -75,10 +81,11 @@ public async Task FileSystemWatcher_RazorFileEvent_Background_NotifiesChange()
75
81
var changeKind = RazorFileChangeKind . Added ;
76
82
var listenerMock = new StrictMock < IRazorFileChangeListener > ( ) ;
77
83
listenerMock
78
- . Setup ( l => l . RazorFileChanged ( filePath , changeKind ) )
84
+ . Setup ( l => l . RazorFileChangedAsync ( filePath , changeKind , It . IsAny < CancellationToken > ( ) ) )
85
+ . Returns ( Task . CompletedTask )
79
86
. Verifiable ( ) ;
80
87
81
- var fileChangeDetector = new SimpleTestRazorFileChangeDetector ( Dispatcher , [ listenerMock . Object ] , TimeSpan . FromMilliseconds ( 50 ) )
88
+ using var fileChangeDetector = new SimpleTestRazorFileChangeDetector ( Dispatcher , [ listenerMock . Object ] , TimeSpan . FromMilliseconds ( 50 ) )
82
89
{
83
90
BlockNotificationWorkStart = new ManualResetEventSlim ( initialState : false ) ,
84
91
} ;
@@ -106,10 +113,11 @@ public void FileSystemWatcher_RazorFileEvent_Background_AddRemoveDoesNotNotify()
106
113
var listenerCalled = false ;
107
114
var listenerMock = new StrictMock < IRazorFileChangeListener > ( ) ;
108
115
listenerMock
109
- . Setup ( l => l . RazorFileChanged ( filePath , It . IsAny < RazorFileChangeKind > ( ) ) )
116
+ . Setup ( l => l . RazorFileChangedAsync ( filePath , It . IsAny < RazorFileChangeKind > ( ) , It . IsAny < CancellationToken > ( ) ) )
117
+ . Returns ( Task . CompletedTask )
110
118
. Callback ( ( ) => listenerCalled = true ) ;
111
119
112
- var fileChangeDetector = new SimpleTestRazorFileChangeDetector ( Dispatcher , [ listenerMock . Object ] , TimeSpan . FromMilliseconds ( 10 ) )
120
+ using var fileChangeDetector = new SimpleTestRazorFileChangeDetector ( Dispatcher , [ listenerMock . Object ] , TimeSpan . FromMilliseconds ( 10 ) )
113
121
{
114
122
NotifyNotificationNoop = new ManualResetEventSlim ( initialState : false ) ,
115
123
BlockNotificationWorkStart = new ManualResetEventSlim ( initialState : false )
@@ -133,10 +141,11 @@ public async Task FileSystemWatcher_RazorFileEvent_Background_NotificationNoopTo
133
141
var listenerMock = new StrictMock < IRazorFileChangeListener > ( ) ;
134
142
var callCount = 0 ;
135
143
listenerMock
136
- . Setup ( l => l . RazorFileChanged ( filePath , RazorFileChangeKind . Added ) )
144
+ . Setup ( l => l . RazorFileChangedAsync ( filePath , RazorFileChangeKind . Added , It . IsAny < CancellationToken > ( ) ) )
145
+ . Returns ( Task . CompletedTask )
137
146
. Callback ( ( ) => callCount ++ ) ;
138
147
139
- var fileChangeDetector = new SimpleTestRazorFileChangeDetector ( Dispatcher , [ listenerMock . Object ] , TimeSpan . FromMilliseconds ( 50 ) )
148
+ using var fileChangeDetector = new SimpleTestRazorFileChangeDetector ( Dispatcher , [ listenerMock . Object ] , TimeSpan . FromMilliseconds ( 50 ) )
140
149
{
141
150
BlockNotificationWorkStart = new ManualResetEventSlim ( initialState : false ) ,
142
151
} ;
0 commit comments