# File lib/protest/runner.rb, line 24
    def report(test)
      fire_event(:test, Test.new(test)) if test.real?
      test.run(@report)
      fire_event(:pass, PassedTest.new(test)) if test.real?
    rescue Pending => e
      fire_event :pending, PendingTest.new(test, e)
    rescue AssertionFailed => e
      fire_event :failure, FailedTest.new(test, e)
    rescue Exception => e
      fire_event :error, ErroredTest.new(test, e)
      raise if test.raise_exceptions?
    end