class Bogus::AddsContractVerification
Public Instance Methods
add(fake_name, &block)
click to toggle source
# File lib/bogus/contracts/adds_contract_verification.rb, line 6 def add(fake_name, &block) old_described_class = syntax.described_class before do new_class = adds_recording.add(fake_name, class_to_overwrite(fake_name, block)) syntax.described_class = new_class if overwritten_described_class?(block) end after do syntax.described_class = old_described_class if overwritten_described_class?(block) end after_suite { verifies_contracts.verify(fake_name) } end
Private Instance Methods
after(&block)
click to toggle source
# File lib/bogus/contracts/adds_contract_verification.rb, line 47 def after(&block) syntax.after { block.call } end
after_suite(&block)
click to toggle source
# File lib/bogus/contracts/adds_contract_verification.rb, line 43 def after_suite(&block) syntax.after_suite { block.call } end
before(&block)
click to toggle source
# File lib/bogus/contracts/adds_contract_verification.rb, line 51 def before(&block) syntax.before { block.call } end
class_to_overwrite(fake_name, block)
click to toggle source
# File lib/bogus/contracts/adds_contract_verification.rb, line 27 def class_to_overwrite(fake_name, block) custom_class(block) || described_class || fake_class(fake_name) end
custom_class(block)
click to toggle source
# File lib/bogus/contracts/adds_contract_verification.rb, line 31 def custom_class(block) block.call if block end
described_class()
click to toggle source
# File lib/bogus/contracts/adds_contract_verification.rb, line 35 def described_class syntax.described_class end
fake_class(name)
click to toggle source
# File lib/bogus/contracts/adds_contract_verification.rb, line 39 def fake_class(name) converts_name_to_class.convert(name) end
overwritten_described_class?(block)
click to toggle source
# File lib/bogus/contracts/adds_contract_verification.rb, line 23 def overwritten_described_class?(block) described_class && !custom_class(block) end