@@ -2035,7 +2035,7 @@ class InvalidErrorHandler; end
2035
2035
user_id = 'test_user'
2036
2036
user_attributes = { }
2037
2037
2038
- it 'should call decision listener with correct variable type and value, when user in experiment and feature is not enabled' do
2038
+ it 'should call decision listener with default variable type and value, when user in experiment and feature is not enabled' do
2039
2039
integer_feature = project_instance . config . feature_flag_key_map [ 'integer_single_variable_feature' ]
2040
2040
experiment_to_return = project_instance . config . experiment_id_map [ integer_feature [ 'experimentIds' ] [ 0 ] ]
2041
2041
variation_to_return = experiment_to_return [ 'variations' ] [ 0 ]
@@ -2056,7 +2056,7 @@ class InvalidErrorHandler; end
2056
2056
feature_enabled : false ,
2057
2057
variable_key : 'integer_variable' ,
2058
2058
variable_type : 'integer' ,
2059
- variable_value : 42 ,
2059
+ variable_value : 7 ,
2060
2060
source : 'EXPERIMENT' ,
2061
2061
source_experiment_key : 'test_experiment_integer_feature' ,
2062
2062
source_variation_key : 'control'
@@ -2069,7 +2069,12 @@ class InvalidErrorHandler; end
2069
2069
'integer' ,
2070
2070
user_id ,
2071
2071
nil
2072
- ) ) . to eq ( 42 )
2072
+ ) ) . to eq ( 7 )
2073
+
2074
+ expect ( spy_logger ) . to have_received ( :log ) . once . with (
2075
+ Logger ::DEBUG ,
2076
+ "Feature 'integer_single_variable_feature' for variation 'control' is not enabled. Returning the default variable value '7'."
2077
+ )
2073
2078
end
2074
2079
2075
2080
it 'should call decision listener with correct variable type and value, when user in experiment and feature is enabled' do
@@ -2146,7 +2151,7 @@ class InvalidErrorHandler; end
2146
2151
) ) . to eq ( true )
2147
2152
end
2148
2153
2149
- it 'should call listener with correct variable type and value, when user in rollout and feature is not enabled' do
2154
+ it 'should call listener with default variable type and value, when user in rollout and feature is not enabled' do
2150
2155
experiment_to_return = config_body [ 'rollouts' ] [ 0 ] [ 'experiments' ] [ 1 ]
2151
2156
variation_to_return = experiment_to_return [ 'variations' ] [ 0 ]
2152
2157
decision_to_return = Optimizely ::DecisionService ::Decision . new (
@@ -2165,7 +2170,7 @@ class InvalidErrorHandler; end
2165
2170
feature_enabled : false ,
2166
2171
variable_key : 'boolean_variable' ,
2167
2172
variable_type : 'boolean' ,
2168
- variable_value : false ,
2173
+ variable_value : true ,
2169
2174
source : 'ROLLOUT' ,
2170
2175
source_experiment_key : nil ,
2171
2176
source_variation_key : nil
@@ -2178,10 +2183,15 @@ class InvalidErrorHandler; end
2178
2183
'boolean' ,
2179
2184
user_id ,
2180
2185
user_attributes
2181
- ) ) . to eq ( false )
2186
+ ) ) . to eq ( true )
2187
+
2188
+ expect ( spy_logger ) . to have_received ( :log ) . once . with (
2189
+ Logger ::DEBUG ,
2190
+ "Feature 'boolean_single_variable_feature' for variation '177773' is not enabled. Returning the default variable value 'true'."
2191
+ )
2182
2192
end
2183
2193
2184
- it 'should call listener with correct variable type and value, when user neither in experiment nor in rollout' do
2194
+ it 'should call listener with default variable type and value, when user neither in experiment nor in rollout' do
2185
2195
allow ( project_instance . decision_service ) . to receive ( :get_variation_for_feature ) . and_return ( nil )
2186
2196
2187
2197
expect ( project_instance . notification_center ) . to receive ( :send_notifications ) . once . with (
0 commit comments