Class: RSpec::Hermetic::Restorer

Inherits:
Object
  • Object
show all
Defined in:
lib/rspec/hermetic/restorer.rb,
sig/rspec/hermetic.rbs

Instance Method Summary collapse

Constructor Details

#initialize(configuration) ⇒ Restorer

Returns a new instance of Restorer.

Parameters:



10
11
12
# File 'lib/rspec/hermetic/restorer.rb', line 10

def initialize(configuration)
  @configuration = configuration
end

Instance Method Details

#restore(change_set, before_snapshot, context: nil) ⇒ Object

Parameters:

  • change_set (Object)
  • before_snapshot (Object)
  • context: (Object) (defaults to: nil)

Returns:

  • (Object)


14
15
16
17
18
19
20
21
22
23
24
# File 'lib/rspec/hermetic/restorer.rb', line 14

def restore(change_set, before_snapshot, context: nil)
  restore_env(before_snapshot) if reset?(:env)
  restore_globals(before_snapshot) if reset?(:globals)
  restore_ruby_runtime(before_snapshot) if reset?(:ruby_runtime)
  restore_rails(before_snapshot) if reset?(:rails)
  restore_time(context) if reset?(:time)
  restore_randomness(before_snapshot) if reset?(:randomness)
  restore_constants(change_set) if reset?(:constants)
  restore_resources(change_set) if reset?(:resources)
  restore_filesystem(change_set) if reset?(:filesystem)
end