class TrueTest::Fixture

Attributes

block[RW]
key[RW]

Public Class Methods

evaluate(key, binding) click to toggle source
# File lib/true_test/fixture.rb, line 8
def evaluate(key, binding)
  fixture = registry[key]
  raise "No fixture found in registry with key #{key}: #{registry.keys.inspect}" unless fixture
  fixture.evaluate binding
  fixture
end
new(key, &block) click to toggle source
# File lib/true_test/fixture.rb, line 19
def initialize(key, &block)
  @key = key
  @block = block
end
register(key, &block) click to toggle source
# File lib/true_test/fixture.rb, line 5
def register(key, &block)
  registry[key] = TrueTest::Fixture.new(key, &block)
end
registry() click to toggle source
# File lib/true_test/fixture.rb, line 14
def registry
  @@registry ||= {}
  @@registry
end

Public Instance Methods

description() click to toggle source
# File lib/true_test/fixture.rb, line 23
def description
  @key.to_s.gsub('_', ' ')
end
evaluate(binding) click to toggle source
# File lib/true_test/fixture.rb, line 26
def evaluate(binding)
  @result = binding.instance_eval &@block
  binding.instance_variable_set "@#{@key}", @result
end
unbind(binding) click to toggle source
# File lib/true_test/fixture.rb, line 30
def unbind(binding)
  binding.instance_variable_set "@#{@key}", nil
end