1
+ using System . Diagnostics . CodeAnalysis ;
1
2
using System . Linq ;
2
3
using System . Threading . Tasks ;
3
4
using FluentAssertions ;
9
10
10
11
namespace OpenFeature . Tests
11
12
{
13
+ [ SuppressMessage ( "Reliability" , "CA2007:Consider calling ConfigureAwait on the awaited task" ) ]
12
14
public class OpenFeatureTests : ClearOpenFeatureInstanceFixture
13
15
{
14
16
[ Fact ]
@@ -28,14 +30,14 @@ public async Task OpenFeature_Should_Initialize_Provider()
28
30
var providerMockDefault = Substitute . For < FeatureProvider > ( ) ;
29
31
providerMockDefault . GetStatus ( ) . Returns ( ProviderStatus . NotReady ) ;
30
32
31
- await Api . Instance . SetProviderAsync ( providerMockDefault ) . ConfigureAwait ( false ) ;
32
- await providerMockDefault . Received ( 1 ) . Initialize ( Api . Instance . GetContext ( ) ) . ConfigureAwait ( false ) ;
33
+ await Api . Instance . SetProviderAsync ( providerMockDefault ) ;
34
+ await providerMockDefault . Received ( 1 ) . Initialize ( Api . Instance . GetContext ( ) ) ;
33
35
34
36
var providerMockNamed = Substitute . For < FeatureProvider > ( ) ;
35
37
providerMockNamed . GetStatus ( ) . Returns ( ProviderStatus . NotReady ) ;
36
38
37
- await Api . Instance . SetProviderAsync ( "the-name" , providerMockNamed ) . ConfigureAwait ( false ) ;
38
- await providerMockNamed . Received ( 1 ) . Initialize ( Api . Instance . GetContext ( ) ) . ConfigureAwait ( false ) ;
39
+ await Api . Instance . SetProviderAsync ( "the-name" , providerMockNamed ) ;
40
+ await providerMockNamed . Received ( 1 ) . Initialize ( Api . Instance . GetContext ( ) ) ;
39
41
}
40
42
41
43
[ Fact ]
@@ -46,28 +48,28 @@ public async Task OpenFeature_Should_Shutdown_Unused_Provider()
46
48
var providerA = Substitute . For < FeatureProvider > ( ) ;
47
49
providerA . GetStatus ( ) . Returns ( ProviderStatus . NotReady ) ;
48
50
49
- await Api . Instance . SetProviderAsync ( providerA ) . ConfigureAwait ( false ) ;
50
- await providerA . Received ( 1 ) . Initialize ( Api . Instance . GetContext ( ) ) . ConfigureAwait ( false ) ;
51
+ await Api . Instance . SetProviderAsync ( providerA ) ;
52
+ await providerA . Received ( 1 ) . Initialize ( Api . Instance . GetContext ( ) ) ;
51
53
52
54
var providerB = Substitute . For < FeatureProvider > ( ) ;
53
55
providerB . GetStatus ( ) . Returns ( ProviderStatus . NotReady ) ;
54
56
55
- await Api . Instance . SetProviderAsync ( providerB ) . ConfigureAwait ( false ) ;
56
- await providerB . Received ( 1 ) . Initialize ( Api . Instance . GetContext ( ) ) . ConfigureAwait ( false ) ;
57
- await providerA . Received ( 1 ) . Shutdown ( ) . ConfigureAwait ( false ) ;
57
+ await Api . Instance . SetProviderAsync ( providerB ) ;
58
+ await providerB . Received ( 1 ) . Initialize ( Api . Instance . GetContext ( ) ) ;
59
+ await providerA . Received ( 1 ) . Shutdown ( ) ;
58
60
59
61
var providerC = Substitute . For < FeatureProvider > ( ) ;
60
62
providerC . GetStatus ( ) . Returns ( ProviderStatus . NotReady ) ;
61
63
62
- await Api . Instance . SetProviderAsync ( "named" , providerC ) . ConfigureAwait ( false ) ;
63
- await providerC . Received ( 1 ) . Initialize ( Api . Instance . GetContext ( ) ) . ConfigureAwait ( false ) ;
64
+ await Api . Instance . SetProviderAsync ( "named" , providerC ) ;
65
+ await providerC . Received ( 1 ) . Initialize ( Api . Instance . GetContext ( ) ) ;
64
66
65
67
var providerD = Substitute . For < FeatureProvider > ( ) ;
66
68
providerD . GetStatus ( ) . Returns ( ProviderStatus . NotReady ) ;
67
69
68
- await Api . Instance . SetProviderAsync ( "named" , providerD ) . ConfigureAwait ( false ) ;
69
- await providerD . Received ( 1 ) . Initialize ( Api . Instance . GetContext ( ) ) . ConfigureAwait ( false ) ;
70
- await providerC . Received ( 1 ) . Shutdown ( ) . ConfigureAwait ( false ) ;
70
+ await Api . Instance . SetProviderAsync ( "named" , providerD ) ;
71
+ await providerD . Received ( 1 ) . Initialize ( Api . Instance . GetContext ( ) ) ;
72
+ await providerC . Received ( 1 ) . Shutdown ( ) ;
71
73
}
72
74
73
75
[ Fact ]
@@ -80,13 +82,13 @@ public async Task OpenFeature_Should_Support_Shutdown()
80
82
var providerB = Substitute . For < FeatureProvider > ( ) ;
81
83
providerB . GetStatus ( ) . Returns ( ProviderStatus . NotReady ) ;
82
84
83
- await Api . Instance . SetProviderAsync ( providerA ) . ConfigureAwait ( false ) ;
84
- await Api . Instance . SetProviderAsync ( "named" , providerB ) . ConfigureAwait ( false ) ;
85
+ await Api . Instance . SetProviderAsync ( providerA ) ;
86
+ await Api . Instance . SetProviderAsync ( "named" , providerB ) ;
85
87
86
- await Api . Instance . Shutdown ( ) . ConfigureAwait ( false ) ;
88
+ await Api . Instance . Shutdown ( ) ;
87
89
88
- await providerA . Received ( 1 ) . Shutdown ( ) . ConfigureAwait ( false ) ;
89
- await providerB . Received ( 1 ) . Shutdown ( ) . ConfigureAwait ( false ) ;
90
+ await providerA . Received ( 1 ) . Shutdown ( ) ;
91
+ await providerB . Received ( 1 ) . Shutdown ( ) ;
90
92
}
91
93
92
94
[ Fact ]
@@ -95,8 +97,8 @@ public async Task OpenFeature_Should_Not_Change_Named_Providers_When_Setting_Def
95
97
{
96
98
var openFeature = Api . Instance ;
97
99
98
- await openFeature . SetProviderAsync ( new NoOpFeatureProvider ( ) ) . ConfigureAwait ( false ) ;
99
- await openFeature . SetProviderAsync ( TestProvider . DefaultName , new TestProvider ( ) ) . ConfigureAwait ( false ) ;
100
+ await openFeature . SetProviderAsync ( new NoOpFeatureProvider ( ) ) ;
101
+ await openFeature . SetProviderAsync ( TestProvider . DefaultName , new TestProvider ( ) ) ;
100
102
101
103
var defaultClient = openFeature . GetProviderMetadata ( ) ;
102
104
var namedClient = openFeature . GetProviderMetadata ( TestProvider . DefaultName ) ;
@@ -111,7 +113,7 @@ public async Task OpenFeature_Should_Set_Default_Provide_When_No_Name_Provided()
111
113
{
112
114
var openFeature = Api . Instance ;
113
115
114
- await openFeature . SetProviderAsync ( new TestProvider ( ) ) . ConfigureAwait ( false ) ;
116
+ await openFeature . SetProviderAsync ( new TestProvider ( ) ) ;
115
117
116
118
var defaultClient = openFeature . GetProviderMetadata ( ) ;
117
119
@@ -178,9 +180,9 @@ public void OpenFeature_Should_Add_Hooks()
178
180
179
181
[ Fact ]
180
182
[ Specification ( "1.1.5" , "The API MUST provide a function for retrieving the metadata field of the configured `provider`." ) ]
181
- public void OpenFeature_Should_Get_Metadata ( )
183
+ public async Task OpenFeature_Should_Get_Metadata ( )
182
184
{
183
- Api . Instance . SetProviderAsync ( new NoOpFeatureProvider ( ) ) . Wait ( ) ;
185
+ await Api . Instance . SetProviderAsync ( new NoOpFeatureProvider ( ) ) ;
184
186
var openFeature = Api . Instance ;
185
187
var metadata = openFeature . GetProviderMetadata ( ) ;
186
188
@@ -239,8 +241,8 @@ public async Task OpenFeature_Should_Allow_Multiple_Client_Mapping()
239
241
client1 . GetMetadata ( ) . Name . Should ( ) . Be ( "client1" ) ;
240
242
client2 . GetMetadata ( ) . Name . Should ( ) . Be ( "client2" ) ;
241
243
242
- client1 . GetBooleanValue ( "test" , false ) . Result . Should ( ) . BeTrue ( ) ;
243
- client2 . GetBooleanValue ( "test" , false ) . Result . Should ( ) . BeFalse ( ) ;
244
+ ( await client1 . GetBooleanValue ( "test" , false ) ) . Should ( ) . BeTrue ( ) ;
245
+ ( await client2 . GetBooleanValue ( "test" , false ) ) . Should ( ) . BeFalse ( ) ;
244
246
}
245
247
}
246
248
}
0 commit comments