Sha256: 45e6da701bd7268328d6dc94d7d60d0f3dc1ded22241a74221f06e57401348c9

Contents?: true

Size: 903 Bytes

Versions: 1

Compression:

Stored size: 903 Bytes

Contents

module Nyanko
  module Test
    class << self
      def activations
        @activations ||= {}
      end

      def included(base)
        base.send :include, UnitProxyProvider
      end
    end

    def enable_unit(unit_name)
      Test.activations[unit_name] = true
    end
    alias_method :enable_ext, :enable_unit

    def disable_unit(unit_name)
      Test.activations[unit_name] = false
    end
    alias_method :disable_ext, :disable_unit
  end

  module Unit
    module ClassMethods
      def active_with_activations?(*args)
        case Test.activations[unit_name]
        when true
          true
        when false
          false
        else
          active_without_activations?(*args)
        end
      end
      alias_method_chain :active?, :activations
    end
  end
end

RSpec.configure do |config|
  config.include Nyanko::Test
  config.after { Nyanko::Test.activations.clear }
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
nyanko-0.0.9 lib/nyanko/test.rb