Sha256: 841712c69f019aea41af2d8a7bc26e82c6baa42a87816b3daf2dddca1d00238d

Contents?: true

Size: 775 Bytes

Versions: 10

Compression:

Stored size: 775 Bytes

Contents

require_relative "spec_helper"

describe "Roda.freeze" do
  before do
    app{'a'}.freeze
  end

  it "should result in a working application" do
    body.must_equal 'a'
  end

  it "should not break if called more than once" do
    app.freeze
    body.must_equal 'a'
  end

  it "should make opts not be modifiable after calling finalize!" do
    proc{app.opts[:foo] = 'bar'}.must_raise
  end

  it "should make use and route raise errors" do
    proc{app.use Class.new}.must_raise
    proc{app.route{}}.must_raise
  end

  it "should make plugin raise errors" do
    proc{app.plugin Module.new}.must_raise
  end

  it "should make subclassing raise errors" do
    proc{Class.new(app)}.must_raise
  end

  it "should freeze app" do
    app.frozen?.must_equal true
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
roda-3.28.0 spec/freeze_spec.rb
roda-3.27.0 spec/freeze_spec.rb
roda-3.26.0 spec/freeze_spec.rb
roda-3.25.0 spec/freeze_spec.rb
roda-3.24.0 spec/freeze_spec.rb
roda-3.23.0 spec/freeze_spec.rb
roda-3.22.0 spec/freeze_spec.rb
roda-3.21.0 spec/freeze_spec.rb
roda-3.20.0 spec/freeze_spec.rb
roda-3.19.0 spec/freeze_spec.rb