Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@myronmarston
Forked from stevenharman/some_spec.rb
Created March 20, 2012 23:40
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save myronmarston/2142563 to your computer and use it in GitHub Desktop.
Save myronmarston/2142563 to your computer and use it in GitHub Desktop.
Using Rspec's "let" inside an "it" block. Crazy? Yes. Useful? Occasionally.
describe "#mentions_story?" do
subject { described_class.new(file) }
let(:file) { "COMMIT_EDITMSG" }
def set_file_contents(text)
File.stub(:read).with(file) { example_commit_message(text) }
end
context "commit message contains the special Pivotal Tracker story syntax" do
it "matches just the number" do
set_file_contents "[#8675309]"
subject.should be_mentions_story("8675309")
end
it "matches state change and number" do
set_file_contents "[Fixes #8675309]"
subject.should be_mentions_story("8675309")
end
end
context "commit message doesn't contain the special Pivotal Tracker story syntax" do
it "doesn't match without brackets" do
set_file_contents "#8675309"
subject.should_not be_mentions_story("8675309")
end
end
end
@stevenharman
Copy link

Yep, that's better!

Ahh... so nice to have folks to bounce ideas of off - they so often bounce back much better ones!

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