@@ -17,7 +17,8 @@ public class AutoSetupMiddlewareTests
17
17
private readonly Mock < IDistributedLock > _mockDistributedLock ;
18
18
private readonly Mock < IOptions < AutoSetupOptions > > _mockOptions ;
19
19
private readonly Mock < IAutoSetupService > _mockAutoSetupService ;
20
-
20
+ private bool _nextCalled ;
21
+ private AutoSetupMiddleware _middleware ;
21
22
public AutoSetupMiddlewareTests ( )
22
23
{
23
24
_shellSettings = new ShellSettings ( ) ;
@@ -36,34 +37,34 @@ public AutoSetupMiddlewareTests()
36
37
new TenantSetupOptions { ShellName = ShellSettings . DefaultShellName }
37
38
}
38
39
} ) ;
39
- }
40
-
41
- [ Fact ]
42
- public async Task InvokeAsync_InitializedShell_SkipsSetup ( )
43
- {
44
- // Arrange
45
- _shellSettings . State = TenantState . Running ;
46
40
47
- var httpContext = new DefaultHttpContext ( ) ;
48
- var nextCalled = false ;
49
- var middleware = new AutoSetupMiddleware (
41
+ _middleware = new AutoSetupMiddleware (
50
42
next : ( innerHttpContext ) =>
51
43
{
52
- nextCalled = true ;
53
-
44
+ _nextCalled = true ;
45
+
54
46
return Task . CompletedTask ;
55
47
} ,
56
48
_mockShellHost . Object ,
57
49
_shellSettings ,
58
50
_mockShellSettingsManager . Object ,
59
51
_mockDistributedLock . Object ,
60
52
_mockOptions . Object ) ;
53
+ }
54
+
55
+ [ Fact ]
56
+ public async Task InvokeAsync_InitializedShell_SkipsSetup ( )
57
+ {
58
+ // Arrange
59
+ _shellSettings . State = TenantState . Running ;
60
+
61
+ var httpContext = new DefaultHttpContext ( ) ;
61
62
62
63
// Act
63
- await middleware . InvokeAsync ( httpContext ) ;
64
+ await _middleware . InvokeAsync ( httpContext ) ;
64
65
65
66
// Assert
66
- Assert . True ( nextCalled ) ;
67
+ Assert . True ( _nextCalled ) ;
67
68
_mockAutoSetupService . Verify ( s => s . SetupTenantAsync ( It . IsAny < TenantSetupOptions > ( ) , It . IsAny < ShellSettings > ( ) ) , Times . Never ) ;
68
69
}
69
70
@@ -84,16 +85,8 @@ public async Task InvokeAsync_FailedSetup_ReturnsServiceUnavailable()
84
85
. AddSingleton ( _mockAutoSetupService . Object )
85
86
. BuildServiceProvider ( ) ;
86
87
87
- var middleware = new AutoSetupMiddleware (
88
- next : ( innerHttpContext ) => Task . CompletedTask ,
89
- _mockShellHost . Object ,
90
- _shellSettings ,
91
- _mockShellSettingsManager . Object ,
92
- _mockDistributedLock . Object ,
93
- _mockOptions . Object ) ;
94
-
95
88
// Act
96
- await middleware . InvokeAsync ( httpContext ) ;
89
+ await _middleware . InvokeAsync ( httpContext ) ;
97
90
98
91
// Assert
99
92
Assert . Equal ( StatusCodes . Status503ServiceUnavailable , httpContext . Response . StatusCode ) ;
@@ -116,16 +109,8 @@ public async Task InvokeAsync_UnInitializedShell_PerformsSetup()
116
109
. AddSingleton ( _mockAutoSetupService . Object )
117
110
. BuildServiceProvider ( ) ;
118
111
119
- var middleware = new AutoSetupMiddleware (
120
- next : ( innerHttpContext ) => Task . CompletedTask ,
121
- _mockShellHost . Object ,
122
- _shellSettings ,
123
- _mockShellSettingsManager . Object ,
124
- _mockDistributedLock . Object ,
125
- _mockOptions . Object ) ;
126
-
127
112
// Act
128
- await middleware . InvokeAsync ( httpContext ) ;
113
+ await _middleware . InvokeAsync ( httpContext ) ;
129
114
130
115
// Assert
131
116
Assert . Equal ( StatusCodes . Status302Found , httpContext . Response . StatusCode ) ; // Redirect
@@ -142,16 +127,8 @@ public async Task InvokeAsync_FailedLockAcquisition_ThrowsTimeoutException()
142
127
143
128
var httpContext = new DefaultHttpContext ( ) ;
144
129
145
- var middleware = new AutoSetupMiddleware (
146
- next : ( innerHttpContext ) => Task . CompletedTask ,
147
- _mockShellHost . Object ,
148
- _shellSettings ,
149
- _mockShellSettingsManager . Object ,
150
- _mockDistributedLock . Object ,
151
- _mockOptions . Object ) ;
152
-
153
130
// Act & Assert
154
- await Assert . ThrowsAsync < TimeoutException > ( ( ) => middleware . InvokeAsync ( httpContext ) ) ;
131
+ await Assert . ThrowsAsync < TimeoutException > ( ( ) => _middleware . InvokeAsync ( httpContext ) ) ;
155
132
}
156
133
157
134
private void SetupDistributedLockMock ( bool acquireLock )
@@ -162,4 +139,3 @@ private void SetupDistributedLockMock(bool acquireLock)
162
139
. ReturnsAsync ( ( mockLocker . Object , acquireLock ) ) ;
163
140
}
164
141
}
165
-
0 commit comments