@@ -24,6 +24,45 @@ public void ConvertsUser()
2424 Roles = new List < Role > ( )
2525 } ;
2626
27+ // Act
28+ FeatureFlagClientExtensions . IsEnabled ( client . Object , "flight" , user , defaultValue : true ) ;
29+
30+ // Assert
31+ client . Verify (
32+ c => c . IsEnabled (
33+ "flight" ,
34+ It . Is < IFlightUser > ( u =>
35+ u . Username == "a" &&
36+ u . EmailAddress == "[email protected] " && 37+ u . IsSiteAdmin == false ) ,
38+ true ) ) ;
39+ }
40+
41+ [ Fact ]
42+ public void ConvertsAnonymousUser ( )
43+ {
44+ // Arrange - anonymous users are represented as a null user object
45+ var client = new Mock < IFeatureFlagClient > ( ) ;
46+
47+ User user = null ;
48+
49+ // Act
50+ FeatureFlagClientExtensions . IsEnabled ( client . Object , "flight" , user , defaultValue : true ) ;
51+
52+ // Assert
53+ client . Verify (
54+ c => c . IsEnabled (
55+ "flight" ,
56+ It . Is < IFlightUser > ( u => u == null ) ,
57+ true ) ) ;
58+ }
59+
60+ [ Fact ]
61+ public void ConvertsAdmins ( )
62+ {
63+ // Arrange
64+ var client = new Mock < IFeatureFlagClient > ( ) ;
65+
2766 var admin = new User
2867 {
2968 Username = "b" ,
@@ -35,22 +74,12 @@ public void ConvertsUser()
3574 } ;
3675
3776 // Act
38- FeatureFlagClientExtensions . IsEnabled ( client . Object , "flightA" , user , defaultValue : true ) ;
39- FeatureFlagClientExtensions . IsEnabled ( client . Object , "flightB" , admin , defaultValue : true ) ;
77+ FeatureFlagClientExtensions . IsEnabled ( client . Object , "flight" , admin , defaultValue : true ) ;
4078
4179 // Assert
4280 client . Verify (
4381 c => c . IsEnabled (
44- "flightA" ,
45- It . Is < IFlightUser > ( u =>
46- u . Username == "a" &&
47- u . EmailAddress == "[email protected] " && 48- u . IsSiteAdmin == false ) ,
49- true ) ) ;
50-
51- client . Verify (
52- c => c . IsEnabled (
53- "flightB" ,
82+ "flight" ,
5483 It . Is < IFlightUser > ( u =>
5584 u . Username == "b" &&
5685 u . EmailAddress == "[email protected] " &&
0 commit comments