waterlink / rspec-json_expectations

Set of matchers and helpers to allow you test your APIs responses like a pro.
https://www.relishapp.com/waterlink/rspec-json-expectations/docs
MIT License
140 stars 23 forks source link

getting error when running rspec #15

Closed eyalgo closed 8 years ago

eyalgo commented 8 years ago

Hi, I've added gem 'rspec-json_expectations' to Gemfile. Then, when I run bundle exec rspec, I get the following error: /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-json_expectations-1.2.1/lib/rspec/json_expectations.rb:1:inrequire': cannot load such file -- rspec (LoadError) from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-json_expectations-1.2.1/lib/rspec/json_expectations.rb:1:in <top (required)>' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/runtime.rb:91:inrequire' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/runtime.rb:91:in rescue in block in require' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/runtime.rb:68:inblock in require' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/runtime.rb:61:in each' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/runtime.rb:61:inrequire' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler.rb:99:in require' from /Users/eyalgo/dev/datalift-management-ruby/config/application.rb:17:in<top (required)>' from /Users/eyalgo/dev/datalift-management-ruby/config/environment.rb:2:in require' from /Users/eyalgo/dev/datalift-management-ruby/config/environment.rb:2:in<top (required)>' from /Users/eyalgo/dev/datalift-management-ruby/spec/spec_helper.rb:19:in require' from /Users/eyalgo/dev/datalift-management-ruby/spec/spec_helper.rb:19:in<top (required)>' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-core-3.1.7/lib/rspec/core/configuration.rb:1072:in require' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-core-3.1.7/lib/rspec/core/configuration.rb:1072:inblock in requires=' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-core-3.1.7/lib/rspec/core/configuration.rb:1072:in each' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-core-3.1.7/lib/rspec/core/configuration.rb:1072:inrequires=' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-core-3.1.7/lib/rspec/core/configuration_options.rb:103:in block in process_options_into' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-core-3.1.7/lib/rspec/core/configuration_options.rb:102:ineach' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-core-3.1.7/lib/rspec/core/configuration_options.rb:102:in process_options_into' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-core-3.1.7/lib/rspec/core/configuration_options.rb:22:inconfigure' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-core-3.1.7/lib/rspec/core/runner.rb:95:in setup' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-core-3.1.7/lib/rspec/core/runner.rb:84:inrun' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-core-3.1.7/lib/rspec/core/runner.rb:69:in run' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-core-3.1.7/lib/rspec/core/runner.rb:37:ininvoke' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-core-3.1.7/exe/rspec:4:in <top (required)>' from /Users/eyalgo/.rbenv/versions/2.3.0/bin/rspec:23:inload' from /Users/eyalgo/.rbenv/versions/2.3.0/bin/rspec:23:in <main>'

from Gemfile.lock: rspec-core (3.1.7)

It's even before I even touched spec_helper.rb (that's the only file we use)

Any idea?

benoittgt commented 8 years ago

Very strange behavior. What's happen if you specify a rspec file like bundle exec rspec spec/models/user_spec.rb ?

Try just changing require 'rails_helper' with require 'spec_helper'

eyalgo commented 8 years ago

Same thing. bundle exec rspec spec/models/facebook_campaign_spec.rb

/Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-json_expectations-1.2.1/lib/rspec/json_expectations.rb:1:inrequire': cannot load such file -- rspec (LoadError) from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/rspec-json_expectations-1.2.1/lib/rspec/json_expectations.rb:1:in <top (required)>' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/runtime.rb:91:inrequire' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/runtime.rb:91:in rescue in block in require' from /Users/eyalgo/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/runtime.rb:68:inblock in require' ...`

BTW, that spec doesn't use JSON. The exception happens when I am just adding the gem to Gemfile (under group :development, :test)

benoittgt commented 8 years ago

Nothing change when you try this ? http://stackoverflow.com/a/25804049/2747638

benoittgt commented 8 years ago

And also check : https://github.com/nviennot/irb-config/issues/15

eyalgo commented 8 years ago

OK. so this: https://github.com/nviennot/irb-config/issues/15 helped. I moved rspec-rails to development and test group. And also added gem 'rspec' to this group.

Thanks! (closing)