1
1
package com .launchdarkly .client ;
2
2
3
+ import com .google .gson .JsonPrimitive ;
4
+ import org .glassfish .jersey .server .JSONP ;
3
5
import org .junit .Test ;
4
6
5
7
import java .util .Arrays ;
8
10
9
11
public class FeatureRepTest {
10
12
11
- private final Variation .TargetRule targetUserOn = new Variation .TargetRule ("key" , Collections .<Object >singletonList ("targetOn@test.com" ));
13
+ private final Variation .TargetRule targetUserOn = new Variation .TargetRule ("key" , Collections .<JsonPrimitive >singletonList (new JsonPrimitive ( "targetOn@test.com" ) ));
12
14
13
- private final Variation .TargetRule targetGroupOn = new Variation .TargetRule ("groups" , Arrays .<Object >asList ("google" , "microsoft" ));
15
+ private final Variation .TargetRule targetGroupOn = new Variation .TargetRule ("groups" , Arrays .<JsonPrimitive >asList (new JsonPrimitive ( "google" ), new JsonPrimitive ( "microsoft" ) ));
14
16
15
17
// GSON will deserialize numbers as decimals
16
- private final Variation .TargetRule targetFavoriteNumberOn = new Variation .TargetRule ("favorite_number" , Arrays .<Object >asList (42.0 ));
18
+ private final Variation .TargetRule targetFavoriteNumberOn = new Variation .TargetRule ("favorite_number" , Arrays .<JsonPrimitive >asList (new JsonPrimitive ( 42 ) ));
17
19
18
- private final Variation .TargetRule targetLikesCatsOn = new Variation .TargetRule ("likes_cats" , Arrays .<Object >asList (true ));
20
+ private final Variation .TargetRule targetLikesCatsOn = new Variation .TargetRule ("likes_cats" , Arrays .<JsonPrimitive >asList (new JsonPrimitive ( true ) ));
19
21
20
- private final Variation .TargetRule targetUserOff = new Variation .TargetRule ("key" , Collections .<Object >singletonList ("targetOff@test.com" ));
22
+ private final Variation .TargetRule targetUserOff = new Variation .TargetRule ("key" , Collections .<JsonPrimitive >singletonList (new JsonPrimitive ( "targetOff@test.com" ) ));
21
23
22
- private final Variation .TargetRule targetGroupOff = new Variation .TargetRule ("groups" , Arrays .<Object >asList ("oracle" ));
24
+ private final Variation .TargetRule targetGroupOff = new Variation .TargetRule ("groups" , Arrays .<JsonPrimitive >asList (new JsonPrimitive ( "oracle" ) ));
23
25
24
- private final Variation .TargetRule targetFavoriteNumberOff = new Variation .TargetRule ("favorite_number" , Arrays .<Object >asList (33.0 ));
26
+ private final Variation .TargetRule targetFavoriteNumberOff = new Variation .TargetRule ("favorite_number" , Arrays .<JsonPrimitive >asList (new JsonPrimitive ( 33.0 ) ));
25
27
26
- private final Variation .TargetRule targetLikesDogsOff = new Variation .TargetRule ("likes_dogs" , Arrays .<Object >asList (false ));
28
+ private final Variation .TargetRule targetLikesDogsOff = new Variation .TargetRule ("likes_dogs" , Arrays .<JsonPrimitive >asList (new JsonPrimitive ( false ) ));
27
29
28
- private final Variation .TargetRule targetAnonymousOn = new Variation .TargetRule ("anonymous" , Collections .<Object >singletonList (true ));
30
+ private final Variation .TargetRule targetAnonymousOn = new Variation .TargetRule ("anonymous" , Collections .<JsonPrimitive >singletonList (new JsonPrimitive ( true ) ));
29
31
30
32
private final Variation <Boolean > trueVariation = new Variation .Builder <Boolean >(true , 80 )
31
33
.target (targetUserOn )
@@ -119,16 +121,27 @@ public void testFlagForTargetNumericTestOn() {
119
121
assertEquals (true , b );
120
122
}
121
123
122
- @ Test
123
- public void testFlagForTargetBooleanTestOn () {
124
- LDUser user = new LDUser .Builder ("targetOther@test.com" )
125
- . custom ( "likes_cats " , true )
126
- .build ();
124
+ @ Test
125
+ public void testFlagForTargetNumericListTestOn () {
126
+ LDUser user = new LDUser .Builder ("targetOther@test.com" )
127
+ . customNumber ( "favorite_number " , Arrays .< Number > asList ( 42 , 32 ) )
128
+ .build ();
127
129
128
- Boolean b = simpleFlag .evaluate (user );
130
+ Boolean b = simpleFlag .evaluate (user );
129
131
130
- assertEquals (true , b );
131
- }
132
+ assertEquals (true , b );
133
+ }
134
+
135
+ @ Test
136
+ public void testFlagForTargetBooleanTestOn () {
137
+ LDUser user = new LDUser .Builder ("targetOther@test.com" )
138
+ .custom ("likes_cats" , true )
139
+ .build ();
140
+
141
+ Boolean b = simpleFlag .evaluate (user );
142
+
143
+ assertEquals (true , b );
144
+ }
132
145
133
146
@ Test
134
147
public void testFlagForTargetGroupOff () {
@@ -152,16 +165,16 @@ public void testFlagForTargetNumericTestOff() {
152
165
assertEquals (false , b );
153
166
}
154
167
155
- @ Test
156
- public void testFlagForTargetBooleanTestOff () {
157
- LDUser user = new LDUser .Builder ("targetOther@test.com" )
158
- .custom ("likes_dogs" , false )
159
- .build ();
168
+ @ Test
169
+ public void testFlagForTargetBooleanTestOff () {
170
+ LDUser user = new LDUser .Builder ("targetOther@test.com" )
171
+ .custom ("likes_dogs" , false )
172
+ .build ();
160
173
161
- Boolean b = simpleFlag .evaluate (user );
174
+ Boolean b = simpleFlag .evaluate (user );
162
175
163
- assertEquals (false , b );
164
- }
176
+ assertEquals (false , b );
177
+ }
165
178
166
179
@ Test
167
180
public void testDisabledFlagAlwaysOff () {
0 commit comments