| Module | Spec::Example::Subject::ExampleMethods |
| In: |
lib/spec/example/subject.rb
|
| should | -> | __should_for_example_group__ |
| should_not | -> | __should_not_for_example_group__ |
Just like should, should_not delegates to the subject (implicit or explicit) of the example group.
describe Person do
it { should_not be_eligible_to_vote }
end
Returns the subject defined in ExampleGroupMethods#subject. The subject block is only executed once per example, the result of which is cached and returned by any subsequent calls to subject.
If a class is passed to describe and no subject is explicitly declared in the example group, then subject will return a new instance of that class.
# explicit subject defined by the subject method
describe Person do
subject { Person.new(:birthdate => 19.years.ago) }
it "should be eligible to vote" do
subject.should be_eligible_to_vote
end
end
# implicit subject => { Person.new }
describe Person do
it "should be eligible to vote" do
subject.should be_eligible_to_vote
end
end