Skip to content

Instantly share code, notes, and snippets.

@moro
Created June 18, 2013 08:24
Show Gist options
  • Save moro/5803584 to your computer and use it in GitHub Desktop.
Save moro/5803584 to your computer and use it in GitHub Desktop.
Syntax suger for defining double.
module Doublet
def doublet(name, &block)
let(name) { double.tap(&block) }
end
def doublet!(name, &block)
let!(name) { double.tap(&block) }
end
end
RSpec.configure do |config|
config.extend Doublet
end
describe 'Doublet usage' do
doublet!(:my_mock) {|my_mock| my_mock.should_receive(:do_something) }
specify { my_mock.do_something }
end
@fujimura
Copy link

最近こんなものを作ったところです!
http://rubygems.org/gems/rspec-something

この例だとこんな感じで書けます。

require 'rspec'
require 'rspec/something'

describe 'Doublet usage' do
  let(:my_mock) { something.do_something }

  specify { my_mock.do_something }
end

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment