Sha256: 6d875190cdb2f9a6e991af3dcdd8fe76f4aec6f904cea025ea3a3700f0d9ecdb
Contents?: true
Size: 1.14 KB
Versions: 1
Compression:
Stored size: 1.14 KB
Contents
require 'active_support/concern' module SpecHelpers module StoresCleaner extend ActiveSupport::Concern include CircuitBlueprints included do around :each do |example| orig_site_store = Circuit::Storage::Sites.instance_variable_get(:@instance) orig_node_store = Circuit::Storage::Nodes.instance_variable_get(:@instance) clear_storage if @storage Circuit.set_site_store @storage Circuit.set_node_store @storage ensure_blueprints end example.run clear_storage silence_warnings do Circuit.set_site_store orig_site_store Circuit.set_node_store orig_node_store end ensure_blueprints end end module ClassMethods def use_storage(val) before(:all) { @storage = val } end end private def clear_storage Circuit::Storage::Sites.instance_variable_set(:@instance, nil) Circuit::Storage::Nodes.instance_variable_set(:@instance, nil) Circuit.send(:remove_const, :Site) rescue NameError Circuit.send(:remove_const, :Node) rescue NameError end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
circuit-0.2.0 | spec/support/spec_helpers/stores_cleaner.rb |