From d2f19755f976b57a1e05f761a59760a6a90fabe4 Mon Sep 17 00:00:00 2001 From: ozayr-zaviar Date: Tue, 16 Nov 2021 15:01:10 +0500 Subject: [PATCH 1/2] optimizely_client validity fixed --- lib/optimizely/optimizely_user_context.rb | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/lib/optimizely/optimizely_user_context.rb b/lib/optimizely/optimizely_user_context.rb index f6269ffe..2f0cc1fb 100644 --- a/lib/optimizely/optimizely_user_context.rb +++ b/lib/optimizely/optimizely_user_context.rb @@ -102,8 +102,10 @@ def decide_all(options = nil) # @return - true if the forced decision has been set successfully. def set_forced_decision(context, decision) + unless @optimizely_client&.is_valid + return false + end flag_key = context[:flag_key] - return false if @optimizely_client&.get_optimizely_config.nil? return false if flag_key.nil? @forced_decision_mutex.synchronize { @forced_decisions[context] = decision } @@ -126,7 +128,9 @@ def find_forced_decision(context) # @return - A variation key or nil if forced decisions are not set for the parameters. def get_forced_decision(context) - return nil if @optimizely_client&.get_optimizely_config.nil? + unless @optimizely_client&.is_valid + return nil + end find_forced_decision(context) end @@ -138,7 +142,9 @@ def get_forced_decision(context) # @return - true if the forced decision has been removed successfully. def remove_forced_decision(context) - return false if @optimizely_client&.get_optimizely_config.nil? + unless @optimizely_client&.is_valid + return false + end deleted = false @forced_decision_mutex.synchronize do @@ -155,7 +161,9 @@ def remove_forced_decision(context) # @return - true if forced decisions have been removed successfully. def remove_all_forced_decision - return false if @optimizely_client&.get_optimizely_config.nil? + unless @optimizely_client&.is_valid + return false + end @forced_decision_mutex.synchronize { @forced_decisions.clear } true From cb3db8b0b89305df082f77cd17ddc0bf8082fc31 Mon Sep 17 00:00:00 2001 From: ozayr-zaviar Date: Tue, 16 Nov 2021 16:46:44 +0500 Subject: [PATCH 2/2] rubocop fixes --- lib/optimizely/optimizely_user_context.rb | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/lib/optimizely/optimizely_user_context.rb b/lib/optimizely/optimizely_user_context.rb index 2f0cc1fb..3e9d7b29 100644 --- a/lib/optimizely/optimizely_user_context.rb +++ b/lib/optimizely/optimizely_user_context.rb @@ -102,9 +102,8 @@ def decide_all(options = nil) # @return - true if the forced decision has been set successfully. def set_forced_decision(context, decision) - unless @optimizely_client&.is_valid - return false - end + return false unless @optimizely_client&.is_valid + flag_key = context[:flag_key] return false if flag_key.nil? @@ -128,9 +127,7 @@ def find_forced_decision(context) # @return - A variation key or nil if forced decisions are not set for the parameters. def get_forced_decision(context) - unless @optimizely_client&.is_valid - return nil - end + return nil unless @optimizely_client&.is_valid find_forced_decision(context) end @@ -142,9 +139,7 @@ def get_forced_decision(context) # @return - true if the forced decision has been removed successfully. def remove_forced_decision(context) - unless @optimizely_client&.is_valid - return false - end + return false unless @optimizely_client&.is_valid deleted = false @forced_decision_mutex.synchronize do @@ -161,9 +156,7 @@ def remove_forced_decision(context) # @return - true if forced decisions have been removed successfully. def remove_all_forced_decision - unless @optimizely_client&.is_valid - return false - end + return false unless @optimizely_client&.is_valid @forced_decision_mutex.synchronize { @forced_decisions.clear } true