Sha256: b65a6aee3b83dff52f5bb44cfc28a5091a48ee2cef369b2a5803c5fc530c5877
Contents?: true
Size: 1.78 KB
Versions: 1
Compression:
Stored size: 1.78 KB
Contents
require "minitest/autorun" require "onesie" class TestOnesie < MiniTest::Unit::TestCase def test_initialize app = Onesie.new nil assert_equal [], app.except assert_equal [], app.only assert_equal "/", app.path end def test_initialize_except app = Onesie.new nil, :except => "/foo" refute_nil app.except.first end def test_initialize_only app = Onesie.new nil, :only => "/foo" refute_nil app.only.first end def test_call_onesie_clear app = make_app env = make_env "REQUEST_URI" => "onesie.clear" session = env["rack.session"] session["onesie.path"] = "foo" app.call env refute_equal "foo", session["onesie.path"] end def test_call_except called = false app = make_app(:except => "/foo") { called = true } env = make_env env["REQUEST_URI"] = env["PATH_INFO"] = "/bar" status, headers, body = app.call env refute called assert_equal 302, status assert_match(/\/bar$/, headers["Location"]) env["REQUEST_URI"] = env["PATH_INFO"] = "/foo" app.call env assert called end def test_call_only called = false app = make_app(:only => "/foo") { called = true } env = make_env env["REQUEST_URI"] = env["PATH_INFO"] = "/bar" app.call env assert called called = false env["REQUEST_URI"] = env["PATH_INFO"] = "/foo" status, headers, body = app.call env refute called assert_equal 302, status assert_match(/\/foo$/, headers["Location"]) end def make_app *args, &block options = Hash === args.last ? args.pop : {} app = args.first || block Onesie.new app, { :log => false }.merge(options) end def make_env extras = {} { "rack.session" => {}, "rack.url_scheme" => "http", }.merge extras end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
onesie-1.0.0 | test/test_onesie.rb |