diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index cc501661..f473a0ec 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -6,44 +6,6 @@ # Note that changes in the inspected code, or installation of new # versions of RuboCop, may require this file to be generated again. -# Offense count: 1 -# Cop supports --auto-correct. -# Configuration parameters: EnforcedStyle. -# SupportedStyles: always, conditionals -Style/AndOr: - Exclude: - - 'lib/split/experiment_catalog.rb' - -# Offense count: 1 -# Cop supports --auto-correct. -Style/ColonMethodCall: - Exclude: - - 'lib/split/combined_experiments_helper.rb' - -# Offense count: 1 -# Cop supports --auto-correct. -Style/DefWithParentheses: - Exclude: - - 'lib/split/helper.rb' - -# Offense count: 1 -# Cop supports --auto-correct. -# Configuration parameters: EnforcedStyle. -# SupportedStyles: require_parentheses, require_no_parentheses, require_no_parentheses_except_multiline -Style/MethodDefParentheses: - Exclude: - - 'lib/split/configuration.rb' - -# Offense count: 9 -# Cop supports --auto-correct. -# Configuration parameters: AllowMultipleReturnValues. -Style/RedundantReturn: - Exclude: - - 'lib/split/alternative.rb' - - 'lib/split/experiment.rb' - - 'lib/split/helper.rb' - - 'lib/split/zscore.rb' - # Offense count: 258 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, ConsistentQuotesInMultiline. diff --git a/lib/split/alternative.rb b/lib/split/alternative.rb index ee962f07..554a7326 100644 --- a/lib/split/alternative.rb +++ b/lib/split/alternative.rb @@ -67,13 +67,13 @@ def unfinished_count def set_field(goal) field = "completed_count" field += ":" + goal unless goal.nil? - return field + field end def set_prob_field(goal) field = "p_winner" field += ":" + goal unless goal.nil? - return field + field end def set_completed_count(count, goal = nil) diff --git a/lib/split/combined_experiments_helper.rb b/lib/split/combined_experiments_helper.rb index b026c665..b925901f 100644 --- a/lib/split/combined_experiments_helper.rb +++ b/lib/split/combined_experiments_helper.rb @@ -32,7 +32,7 @@ def find_combined_experiment(metric_descriptor) raise(Split::InvalidExperimentsFormatError, 'Invalid descriptor class (String or Symbol required)') unless metric_descriptor.class == String || metric_descriptor.class == Symbol raise(Split::InvalidExperimentsFormatError, 'Enable configuration') unless Split.configuration.enabled raise(Split::InvalidExperimentsFormatError, 'Enable `allow_multiple_experiments`') unless Split.configuration.allow_multiple_experiments - Split::configuration.experiments[metric_descriptor.to_sym] + Split.configuration.experiments[metric_descriptor.to_sym] end end end diff --git a/lib/split/configuration.rb b/lib/split/configuration.rb index b06be51e..02977c3e 100644 --- a/lib/split/configuration.rb +++ b/lib/split/configuration.rb @@ -114,7 +114,7 @@ def bots } end - def experiments= experiments + def experiments=(experiments) raise InvalidExperimentsFormatError.new('Experiments must be a Hash') unless experiments.respond_to?(:keys) @experiments = experiments end diff --git a/lib/split/experiment.rb b/lib/split/experiment.rb index 13a429f6..6239c50e 100644 --- a/lib/split/experiment.rb +++ b/lib/split/experiment.rb @@ -326,7 +326,7 @@ def calc_alternative_probabilities(winning_counts, number_of_simulations) winning_counts.each do |alternative, wins| alternative_probabilities[alternative] = wins / number_of_simulations.to_f end - return alternative_probabilities + alternative_probabilities end def count_simulated_wins(winning_alternatives) @@ -339,7 +339,7 @@ def count_simulated_wins(winning_alternatives) winning_alternatives.each do |alternative| winning_counts[alternative] += 1 end - return winning_counts + winning_counts end def find_simulated_winner(simulated_cr_hash) @@ -351,7 +351,7 @@ def find_simulated_winner(simulated_cr_hash) end end winner = winning_pair[0] - return winner + winner end def calc_simulated_conversion_rates(beta_params) @@ -365,7 +365,7 @@ def calc_simulated_conversion_rates(beta_params) simulated_cr_hash[alternative] = simulated_conversion_rate end - return simulated_cr_hash + simulated_cr_hash end def calc_beta_params(goal = nil) @@ -379,7 +379,7 @@ def calc_beta_params(goal = nil) beta_params[alternative] = params end - return beta_params + beta_params end def calc_time=(time) diff --git a/lib/split/experiment_catalog.rb b/lib/split/experiment_catalog.rb index dc2be47e..052857de 100644 --- a/lib/split/experiment_catalog.rb +++ b/lib/split/experiment_catalog.rb @@ -20,7 +20,7 @@ def self.find(name) def self.find_or_initialize(metric_descriptor, control = nil, *alternatives) # Check if array is passed to ab_test # e.g. ab_test('name', ['Alt 1', 'Alt 2', 'Alt 3']) - if control.is_a? Array and alternatives.length.zero? + if control.is_a?(Array) && alternatives.length.zero? control, alternatives = control.first, control[1..-1] end diff --git a/lib/split/helper.rb b/lib/split/helper.rb index 6c2ed0fc..0a5700e5 100644 --- a/lib/split/helper.rb +++ b/lib/split/helper.rb @@ -49,7 +49,7 @@ def finish_experiment(experiment, options = { reset: true }) return true if experiment.has_winner? should_reset = experiment.resettable? && options[:reset] if ab_user[experiment.finished_key] && !should_reset - return true + true else alternative_name = ab_user[experiment.key] trial = Trial.new( @@ -105,7 +105,7 @@ def ab_record_extra_info(metric_descriptor, key, value = 1) Split.configuration.db_failover_on_db_error.call(e) end - def ab_active_experiments() + def ab_active_experiments ab_user.active_experiments rescue => e raise unless Split.configuration.db_failover diff --git a/lib/split/zscore.rb b/lib/split/zscore.rb index 6df25413..eac9160b 100644 --- a/lib/split/zscore.rb +++ b/lib/split/zscore.rb @@ -50,7 +50,7 @@ def self.calculate(p1, n1, p2, n2) # Calculate z-score z_score = (p_1 - p_2)/(se) - return z_score + z_score end end end