lib/rspec-api/dsl.rb in rspec-api-0.2.0 vs lib/rspec-api/dsl.rb in rspec-api-0.4.0

- old
+ new

@@ -3,14 +3,22 @@ require 'rspec-api/dsl/request' module DSL end +# Just like RSpec Core’s `describe` method, `resource` generates a subclass of +# {ExampleGroup} and is available at the top-level namespace. +# The difference is that examples declared inside a `resource` block have access +# to RSpec API own methods, defined in DSL::Resource, such as `has_attribute`, +# `accepts_filter`, `get`, `post`, and so on. def resource(name, args = {}, &block) args.merge! rspec_api_dsl: :resource, rspec_api: {resource_name: name} describe name, args, &block end RSpec.configuration.include DSL::Resource, rspec_api_dsl: :resource RSpec.configuration.include DSL::Route, rspec_api_dsl: :route RSpec.configuration.include DSL::Request, rspec_api_dsl: :request -# requires rspec >= 2.14 : RSpec.configuration.backtrace_exclusion_patterns << %r{lib/rspec-api/dsl\.rb} + +if RSpec::Core::Version::STRING >= '2.14' + RSpec.configuration.backtrace_exclusion_patterns << %r{lib/rspec-api/dsl\.rb} +end \ No newline at end of file