Module: BetaFeature::Flagger::BetaFeatureInstanceMethods
- Defined in:
- lib/beta_feature/flagger.rb
Instance Method Summary collapse
- #all_betas ⇒ Object
- #can_access_beta?(*betas) ⇒ Boolean
-
#enable_beta!(*betas) ⇒ Object
add feature flags.
-
#remove_beta!(*betas) ⇒ Object
remove feature flags.
Instance Method Details
#all_betas ⇒ Object
44 45 46 47 48 |
# File 'lib/beta_feature/flagger.rb', line 44 def all_betas @__all_betas__ ||= begin clean_betas(find_or_create_beta_feature_setting.betas + BetaFeature.released.keys).to_set end end |
#can_access_beta?(*betas) ⇒ Boolean
19 20 21 22 23 |
# File 'lib/beta_feature/flagger.rb', line 19 def can_access_beta?(*betas) betas = betas.map(&:to_s) validate_beta_name(*betas) betas.all? {|key| all_betas.include?(key) } end |
#enable_beta!(*betas) ⇒ Object
add feature flags.
26 27 28 29 30 31 32 |
# File 'lib/beta_feature/flagger.rb', line 26 def enable_beta!(*betas) betas = betas.map(&:to_s) validate_beta_name(*betas) betas = clean_betas(find_or_create_beta_feature_setting.betas + betas) beta_feature_setting.update(betas: betas) flush_beta_cache end |
#remove_beta!(*betas) ⇒ Object
remove feature flags
35 36 37 38 39 40 41 42 |
# File 'lib/beta_feature/flagger.rb', line 35 def remove_beta!(*betas) betas = betas.map(&:to_s) validate_beta_name(*betas) betas = clean_betas(find_or_create_beta_feature_setting.betas - betas) beta_feature_setting.update(betas: betas) flush_beta_cache end |