vendor/bundle/ruby/1.8/gems/rspec-core-2.9.0/lib/rspec/core/subject.rb
def subject
          if defined?(@original_subject)
            @original_subject
          else
            @original_subject = instance_eval(&self.class.subject)
          end
        end
# Returns the subject defined by the example group. 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.
#
# @example
#
#   # 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
Returns the subject defined by the example group. 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.
Returns the subject defined by the example group . 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 .
def subject
          if defined?(@original_subject)
            @original_subject
          else
            @original_subject = instance_eval(&self.class.subject)
          end
        end
def subject if defined? ( @original_subject ) @original_subject else @original_subject = instance_eval ( & self . class . subject ) end end
Returns the subject defined by the example group.
Returns the subject defined by the example group .
example
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
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