@@ -36,10 +36,12 @@ def get_bucketing_id(user_id, entity_id=nil)
36
36
experiment = config . get_experiment_from_key ( 'test_experiment' )
37
37
38
38
# Variation 1
39
- expect ( bucketer . bucket ( experiment , 'test_user' ) ) . to eq ( '111128' )
39
+ expected_variation_1 = config . get_variation_from_id ( 'test_experiment' , '111128' )
40
+ expect ( bucketer . bucket ( experiment , 'test_user' ) ) . to eq ( expected_variation_1 )
40
41
41
42
# Variation 2
42
- expect ( bucketer . bucket ( experiment , 'test_user' ) ) . to eq ( '111129' )
43
+ expected_variation_2 = config . get_variation_from_id ( 'test_experiment' , '111129' )
44
+ expect ( bucketer . bucket ( experiment , 'test_user' ) ) . to eq ( expected_variation_2 )
43
45
44
46
# No matching variation
45
47
expect ( bucketer . bucket ( experiment , 'test_user' ) ) . to be_nil
@@ -58,14 +60,13 @@ def get_bucketing_id(user_id, entity_id=nil)
58
60
expect ( bucketer ) . to receive ( :generate_bucket_value ) . twice . and_return ( 3000 )
59
61
60
62
experiment = config . get_experiment_from_key ( 'group1_exp1' )
61
- expect ( bucketer . bucket ( experiment , 'test_user' ) ) . to eq ( '130001' )
63
+ expected_variation = config . get_variation_from_id ( 'group1_exp1' , '130001' )
64
+ expect ( bucketer . bucket ( experiment , 'test_user' ) ) . to eq ( expected_variation )
62
65
expect ( spy_logger ) . to have_received ( :log ) . exactly ( 4 ) . times
63
- expect ( spy_logger ) . to have_received ( :log )
64
- . with ( Logger ::DEBUG , "Assigned experiment bucket 3000 to user 'test_user'." )
66
+ expect ( spy_logger ) . to have_received ( :log ) . twice
67
+ . with ( Logger ::DEBUG , "Assigned bucket 3000 to user 'test_user'." )
65
68
expect ( spy_logger ) . to have_received ( :log )
66
69
. with ( Logger ::INFO , "User 'test_user' is in experiment 'group1_exp1' of group 101." )
67
- expect ( spy_logger ) . to have_received ( :log )
68
- . with ( Logger ::DEBUG , "Assigned variation bucket 3000 to user 'test_user'." )
69
70
expect ( spy_logger ) . to have_received ( :log )
70
71
. with ( Logger ::INFO , "User 'test_user' is in variation 'g1_e1_v1' of experiment 'group1_exp1'." )
71
72
end
@@ -76,13 +77,12 @@ def get_bucketing_id(user_id, entity_id=nil)
76
77
experiment = config . get_experiment_from_key ( 'group1_exp2' )
77
78
expect ( bucketer . bucket ( experiment , 'test_user' ) ) . to be_nil
78
79
expect ( spy_logger ) . to have_received ( :log )
79
- . with ( Logger ::DEBUG , "Assigned experiment bucket 3000 to user 'test_user'." )
80
+ . with ( Logger ::DEBUG , "Assigned bucket 3000 to user 'test_user'." )
80
81
expect ( spy_logger ) . to have_received ( :log )
81
82
. with ( Logger ::INFO , "User 'test_user' is not in experiment 'group1_exp2' of group 101." )
82
83
end
83
84
84
85
it 'should return nil when user is not bucketed into any bucket' do
85
- expect ( bucketer ) . to receive ( :generate_bucket_value ) . once . and_return ( 3000 )
86
86
expect ( bucketer ) . to receive ( :find_bucket ) . once . and_return ( nil )
87
87
88
88
experiment = config . get_experiment_from_key ( 'group1_exp2' )
@@ -95,10 +95,11 @@ def get_bucketing_id(user_id, entity_id=nil)
95
95
expect ( bucketer ) . to receive ( :generate_bucket_value ) . once . and_return ( 3000 )
96
96
97
97
experiment = config . get_experiment_from_key ( 'group2_exp1' )
98
- expect ( bucketer . bucket ( experiment , 'test_user' ) ) . to eq ( '144443' )
98
+ expected_variation = config . get_variation_from_id ( 'group2_exp1' , '144443' )
99
+ expect ( bucketer . bucket ( experiment , 'test_user' ) ) . to eq ( expected_variation )
99
100
expect ( spy_logger ) . to have_received ( :log ) . twice
100
101
expect ( spy_logger ) . to have_received ( :log )
101
- . with ( Logger ::DEBUG , "Assigned variation bucket 3000 to user 'test_user'." )
102
+ . with ( Logger ::DEBUG , "Assigned bucket 3000 to user 'test_user'." )
102
103
expect ( spy_logger ) . to have_received ( :log )
103
104
. with ( Logger ::INFO , "User 'test_user' is in variation 'g2_e1_v1' of experiment 'group2_exp1'." )
104
105
end
@@ -110,7 +111,7 @@ def get_bucketing_id(user_id, entity_id=nil)
110
111
expect ( bucketer . bucket ( experiment , 'test_user' ) ) . to be_nil
111
112
expect ( spy_logger ) . to have_received ( :log ) . twice
112
113
expect ( spy_logger ) . to have_received ( :log )
113
- . with ( Logger ::DEBUG , "Assigned variation bucket 50000 to user 'test_user'." )
114
+ . with ( Logger ::DEBUG , "Assigned bucket 50000 to user 'test_user'." )
114
115
expect ( spy_logger ) . to have_received ( :log )
115
116
. with ( Logger ::INFO , "User 'test_user' is in no variation." )
116
117
end
@@ -147,7 +148,7 @@ def get_bucketing_id(user_id, entity_id=nil)
147
148
experiment = config . get_experiment_from_key ( 'test_experiment' )
148
149
bucketer . bucket ( experiment , 'test_user' )
149
150
expect ( spy_logger ) . to have_received ( :log ) . twice
150
- expect ( spy_logger ) . to have_received ( :log ) . with ( Logger ::DEBUG , "Assigned variation bucket 50 to user 'test_user'." )
151
+ expect ( spy_logger ) . to have_received ( :log ) . with ( Logger ::DEBUG , "Assigned bucket 50 to user 'test_user'." )
151
152
expect ( spy_logger ) . to have_received ( :log ) . with (
152
153
Logger ::INFO ,
153
154
"User 'test_user' is in variation 'control' of experiment 'test_experiment'."
@@ -161,7 +162,7 @@ def get_bucketing_id(user_id, entity_id=nil)
161
162
bucketer . bucket ( experiment , 'test_user' )
162
163
expect ( spy_logger ) . to have_received ( :log ) . twice
163
164
expect ( spy_logger ) . to have_received ( :log )
164
- . with ( Logger ::DEBUG , "Assigned variation bucket 5050 to user 'test_user'." )
165
+ . with ( Logger ::DEBUG , "Assigned bucket 5050 to user 'test_user'." )
165
166
expect ( spy_logger ) . to have_received ( :log ) . with (
166
167
Logger ::INFO ,
167
168
"User 'test_user' is in variation 'variation' of experiment 'test_experiment'."
@@ -175,9 +176,9 @@ def get_bucketing_id(user_id, entity_id=nil)
175
176
bucketer . bucket ( experiment , 'test_user' )
176
177
expect ( spy_logger ) . to have_received ( :log ) . twice
177
178
expect ( spy_logger ) . to have_received ( :log )
178
- . with ( Logger ::DEBUG , "Assigned variation bucket 50000 to user 'test_user'." )
179
+ . with ( Logger ::DEBUG , "Assigned bucket 50000 to user 'test_user'." )
179
180
expect ( spy_logger ) . to have_received ( :log )
180
181
. with ( Logger ::INFO , "User 'test_user' is in no variation." )
181
182
end
182
183
end
183
- end
184
+ end
0 commit comments