Sha256: 0ee4d1fdc11eca772b004e951a1f0767f2871e5516f44c31f92f2d3d90693a83

Contents?: true

Size: 783 Bytes

Versions: 9

Compression:

Stored size: 783 Bytes

Contents

require 'jellyfish/test'

describe Jellyfish do
  paste :jellyfish

  after do
    Muack.verify
  end

  app = Class.new{
    include Jellyfish
    get('/log')      { log('hi') }
    get('/log_error'){
      log_error(
        Muack::API.stub(RuntimeError.new).backtrace{ ['backtrace'] }.object)
    }
    def self.name
      'Name'
    end
  }.new

  def mock_log
    log = []
    mock(log).puts(is_a(String)){ |msg| log << msg }
    log
  end

  would "log to env['rack.errors']" do
    log = mock_log
    get('/log', app, 'rack.errors' => log)
    log.should.eq ['[Name] hi']
  end

  would "log_error to env['rack.errors']" do
    log = mock_log
    get('/log_error', app, 'rack.errors' => log)
    log.should.eq ['[Name] #<RuntimeError: RuntimeError> ["backtrace"]']
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
jellyfish-1.3.1 test/test_log.rb
jellyfish-1.3.0 test/test_log.rb
jellyfish-1.2.2 test/test_log.rb
jellyfish-1.2.1 test/test_log.rb
jellyfish-1.2.0 test/test_log.rb
jellyfish-1.1.1 test/test_log.rb
jellyfish-1.1.0 test/test_log.rb
jellyfish-1.0.2 test/test_log.rb
jellyfish-1.0.1 test/test_log.rb