Sha256: 15b0e664da393fc0a4910795f52fc6ee5c753f705f09748025b193e207e13f00

Contents?: true

Size: 1.34 KB

Versions: 5

Compression:

Stored size: 1.34 KB

Contents

require File.expand_path("#{File.dirname(__FILE__)}/../../../unit_spec_helper")

module JsTestCore
  module Resources
    module Specs
      describe SpecFile do
        attr_reader :file, :absolute_path, :relative_path, :request, :response
        before do
          @absolute_path = "#{spec_root_path}/failing_spec.js"
          @relative_path = "/specs/failing_spec.js"
          @file = Resources::Specs::SpecFile.new(absolute_path, relative_path)
          @request = Rack::Request.new( Rack::MockRequest.env_for(relative_path) )
          @response = Rack::Response.new
        end

        describe "#get" do
          it "raises NotImplementedError" do
            lambda do
              file.get(request, response)
            end.should raise_error(NotImplementedError)
          end

          it "can be overridden from a Module without needing to redefine the #get method" do
            spec_file_class = Resources::Specs::SpecFile.clone
            mod = Module.new do
              def get(request, response)
              end
            end
            spec_file_class.class_eval do
              include mod
            end
            @file = spec_file_class.new(absolute_path, relative_path)

            lambda do
              file.get(request, response)
            end.should_not raise_error
          end
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 4 rubygems

Version Path
btakita-screw-unit-server-0.3.0 vendor/js-test-core/spec/unit/js_test_core/resources/specs/spec_file_spec.rb
btakita-screw_unit-0.1.0 vendor/js_test_core/spec/unit/js_spec/resources/specs/spec_file_spec.rb
btakita-screw_unit-0.3.0 vendor/js-test-core/spec/unit/js_test_core/resources/specs/spec_file_spec.rb
js_test_core-0.1.1 spec/unit/js_spec/resources/specs/spec_file_spec.rb
screw-unit-server-0.3.0 vendor/js-test-core/spec/unit/js_test_core/resources/specs/spec_file_spec.rb