class TestBench::Registry

Attributes

factory[R]

Public Class Methods

build(&block) click to toggle source
# File lib/test_bench/registry.rb, line 9
def self.build &block
  factory = block
  new factory
end
new(factory) click to toggle source
# File lib/test_bench/registry.rb, line 5
def initialize factory
  @factory = factory
end

Public Instance Methods

get(binding) click to toggle source
# File lib/test_bench/registry.rb, line 18
def get binding
  key = self.key binding
  table[key] ||= factory.()
end
key(binding) click to toggle source
# File lib/test_bench/registry.rb, line 14
def key binding
  binding.receiver.object_id
end
set(binding, value) click to toggle source
# File lib/test_bench/registry.rb, line 23
def set binding, value
  key = self.key binding
  table[key] = value
end
table() click to toggle source
# File lib/test_bench/registry.rb, line 28
def table
  @table ||= {}
end