Sha256: 45c3e280104183b8b1a0f0e9fdb99abcb420f1df3552c3dc3e311766258b0b58
Contents?: true
Size: 1.5 KB
Versions: 27
Compression:
Stored size: 1.5 KB
Contents
Feature: block local expectations Background: Given a file named "lib/account.rb" with: """ class Account def self.create yield new end def opening_balance(amount, currency) end end """ Scenario: passing example Given a file named "spec/account_spec.rb" with: """ require 'account' describe "account DSL" do it "it succeeds when the block local receives the given call" do account = double("Account") Account.should_receive(:create).and_yield(account) do |account| account.should_receive(:opening_balance).with(100, :USD) end Account.create do |account| account.opening_balance 100, :USD end end end """ When I run "rspec ./spec/account_spec.rb" Then the output should contain "1 example, 0 failures" Scenario: failing example Given a file named "spec/account_spec.rb" with: """ require 'account' describe "account DSL" do it "fails when the block local does not receive the expected call" do Account.should_receive(:create).and_yield do |account| account.should_receive(:opening_balance).with(100, :USD) end Account.create do |account| # opening_balance is not called here end end end """ When I run "rspec ./spec/account_spec.rb" Then the output should contain "1 example, 1 failure"
Version data entries
27 entries across 27 versions & 4 rubygems