@@ -65,10 +65,16 @@ public class FirebaseABTestingTest {
65
65
/*experimentStartTimeInEpochMillis=*/ 1000L );
66
66
private static final AbtExperimentInfo TEST_ABT_EXPERIMENT_2_VARIANT_A =
67
67
createExperimentInfo (
68
- TEST_EXPERIMENT_2_ID , TEST_VARIANT_ID_A , "trigger_event_2" , /*experimentStartTimeInEpochMillis=*/ 2000L );
68
+ TEST_EXPERIMENT_2_ID ,
69
+ TEST_VARIANT_ID_A ,
70
+ "trigger_event_2" ,
71
+ /*experimentStartTimeInEpochMillis=*/ 2000L );
69
72
private static final AbtExperimentInfo TEST_ABT_EXPERIMENT_2_VARIANT_B =
70
- createExperimentInfo (
71
- TEST_EXPERIMENT_2_ID , TEST_VARIANT_ID_B , "trigger_event_2" , /*experimentStartTimeInEpochMillis=*/ 2000L );
73
+ createExperimentInfo (
74
+ TEST_EXPERIMENT_2_ID ,
75
+ TEST_VARIANT_ID_B ,
76
+ "trigger_event_2" ,
77
+ /*experimentStartTimeInEpochMillis=*/ 2000L );
72
78
73
79
private static final int MAX_ALLOWED_EXPERIMENTS_IN_ANALYTICS = 100 ;
74
80
@@ -114,7 +120,8 @@ public void replaceAllExperiments_noExperimentsInAnalytics_experimentsCorrectlyS
114
120
115
121
// Validates that TEST_ABT_EXPERIMENT_1 and TEST_ABT_EXPERIMENT_2 have been set in Analytics.
116
122
assertThat (analyticsExperiment1 .toStringMap ()).isEqualTo (TEST_ABT_EXPERIMENT_1 .toStringMap ());
117
- assertThat (analyticsExperiment2 .toStringMap ()).isEqualTo (TEST_ABT_EXPERIMENT_2_VARIANT_A .toStringMap ());
123
+ assertThat (analyticsExperiment2 .toStringMap ())
124
+ .isEqualTo (TEST_ABT_EXPERIMENT_2_VARIANT_A .toStringMap ());
118
125
}
119
126
120
127
@ Test
@@ -127,7 +134,8 @@ public void replaceAllExperiments_existExperimentsInAnalytics_experimentsCorrect
127
134
TEST_ABT_EXPERIMENT_2_VARIANT_A .toConditionalUserProperty (ORIGIN_SERVICE )));
128
135
129
136
AbtExperimentInfo newExperiment3 = createExperimentInfo ("3" , TEST_VARIANT_ID_A , "" , 1000L );
130
- AbtExperimentInfo newExperiment4 = createExperimentInfo ("4" , TEST_VARIANT_ID_A , "trigger_event_4" , 1000L );
137
+ AbtExperimentInfo newExperiment4 =
138
+ createExperimentInfo ("4" , TEST_VARIANT_ID_A , "trigger_event_4" , 1000L );
131
139
132
140
// Simulates the case where experiment 1 is assigned (as before), experiment 2 is no longer
133
141
// assigned; experiment 3 and experiment 4 are newly assigned.
@@ -154,43 +162,44 @@ public void replaceAllExperiments_existExperimentsInAnalytics_experimentsCorrect
154
162
}
155
163
156
164
@ Test
157
- public void replaceAllExperiments_existExperimentsInAnalyticsWithDifferentVariants_experimentsCorrectlySetInAnalytics ()
165
+ public void
166
+ replaceAllExperiments_existExperimentsInAnalyticsWithDifferentVariants_experimentsCorrectlySetInAnalytics ()
158
167
throws Exception {
159
168
when (mockAnalyticsConnector .getConditionalUserProperties (ORIGIN_SERVICE , "" ))
160
- .thenReturn (
161
- Lists .newArrayList (
162
- TEST_ABT_EXPERIMENT_1 .toConditionalUserProperty (ORIGIN_SERVICE ),
163
- TEST_ABT_EXPERIMENT_2_VARIANT_A .toConditionalUserProperty (ORIGIN_SERVICE )));
169
+ .thenReturn (
170
+ Lists .newArrayList (
171
+ TEST_ABT_EXPERIMENT_1 .toConditionalUserProperty (ORIGIN_SERVICE ),
172
+ TEST_ABT_EXPERIMENT_2_VARIANT_A .toConditionalUserProperty (ORIGIN_SERVICE )));
164
173
165
174
AbtExperimentInfo newExperiment3 = createExperimentInfo ("3" , "b" , "" , 1000L );
166
175
AbtExperimentInfo newExperiment4 = createExperimentInfo ("4" , "a" , "trigger_event_4" , 1000L );
167
176
168
177
// Simulates the case where experiments 1 and 2 are removed,
169
178
// experiment 2 is re-set with a new variant, and experiments 3 and 4 are newly added.
170
179
firebaseAbt .replaceAllExperiments (
171
- Lists .newArrayList (
172
- TEST_ABT_EXPERIMENT_2_VARIANT_B .toStringMap (),
173
- newExperiment3 .toStringMap (),
174
- newExperiment4 .toStringMap ()));
180
+ Lists .newArrayList (
181
+ TEST_ABT_EXPERIMENT_2_VARIANT_B .toStringMap (),
182
+ newExperiment3 .toStringMap (),
183
+ newExperiment4 .toStringMap ()));
175
184
176
185
// Validates that experiment 1 is cleared, experiment 2 is updated,
177
186
// and experiment 3 and experiment 4 are set in Analytics.
178
187
ArgumentCaptor <ConditionalUserProperty > analyticsExperimentArgumentCaptor =
179
- ArgumentCaptor .forClass (ConditionalUserProperty .class );
188
+ ArgumentCaptor .forClass (ConditionalUserProperty .class );
180
189
verify (mockAnalyticsConnector , times (1 ))
181
- .clearConditionalUserProperty (TEST_EXPERIMENT_1_ID , null , null );
190
+ .clearConditionalUserProperty (TEST_EXPERIMENT_1_ID , null , null );
182
191
verify (mockAnalyticsConnector , times (1 ))
183
- .clearConditionalUserProperty (TEST_EXPERIMENT_2_ID , null , null );
192
+ .clearConditionalUserProperty (TEST_EXPERIMENT_2_ID , null , null );
184
193
verify (mockAnalyticsConnector , times (3 ))
185
- .setConditionalUserProperty (analyticsExperimentArgumentCaptor .capture ());
194
+ .setConditionalUserProperty (analyticsExperimentArgumentCaptor .capture ());
186
195
187
196
List <ConditionalUserProperty > actualValues = analyticsExperimentArgumentCaptor .getAllValues ();
188
197
assertThat (AbtExperimentInfo .fromConditionalUserProperty (actualValues .get (0 )).toStringMap ())
189
- .isEqualTo (TEST_ABT_EXPERIMENT_2_VARIANT_B .toStringMap ());
198
+ .isEqualTo (TEST_ABT_EXPERIMENT_2_VARIANT_B .toStringMap ());
190
199
assertThat (AbtExperimentInfo .fromConditionalUserProperty (actualValues .get (1 )).toStringMap ())
191
- .isEqualTo (newExperiment3 .toStringMap ());
200
+ .isEqualTo (newExperiment3 .toStringMap ());
192
201
assertThat (AbtExperimentInfo .fromConditionalUserProperty (actualValues .get (2 )).toStringMap ())
193
- .isEqualTo (newExperiment4 .toStringMap ());
202
+ .isEqualTo (newExperiment4 .toStringMap ());
194
203
}
195
204
196
205
@ Test
@@ -205,7 +214,8 @@ public void replaceAllExperiments_totalExperimentsExceedsAnalyticsLimit_oldExper
205
214
TEST_ABT_EXPERIMENT_2_VARIANT_A .toConditionalUserProperty (ORIGIN_SERVICE )));
206
215
207
216
AbtExperimentInfo newExperiment3 = createExperimentInfo ("3" , TEST_VARIANT_ID_A , "" , 1000L );
208
- AbtExperimentInfo newExperiment4 = createExperimentInfo ("4" , TEST_VARIANT_ID_A , "trigger_event_4" , 1000L );
217
+ AbtExperimentInfo newExperiment4 =
218
+ createExperimentInfo ("4" , TEST_VARIANT_ID_A , "trigger_event_4" , 1000L );
209
219
210
220
// Simulates the case where experiment 1 and 2 are assigned (as before), experiment 3 and
211
221
// experiment 4 are newly assigned.
@@ -393,7 +403,10 @@ public void reportActiveExperiment_setsNullTriggerCondition() throws Exception {
393
403
}
394
404
395
405
private static AbtExperimentInfo createExperimentInfo (
396
- String experimentId , String variantId , String triggerEventName , long experimentStartTimeInEpochMillis ) {
406
+ String experimentId ,
407
+ String variantId ,
408
+ String triggerEventName ,
409
+ long experimentStartTimeInEpochMillis ) {
397
410
398
411
return new AbtExperimentInfo (
399
412
experimentId ,
0 commit comments