Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Ruby Build a Todo List Application with Rails 4 Build a Todo List Application with Rails 4 Write Our First Tests

Robert Ott
PLUS
Robert Ott
Courses Plus Student 4,614 Points

I get two Deprecation Warnings on the first rspec example

I am running: ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-darwin14] Rails 4.2.0 rspec 2.99.2 Capybara 2.1.0 (I think)

One the first rpsec example the test is successful (i.e. 0 failures) but I two identical Deprecation Warnings:

Deprecation Warnings:


RSpec::Core::ExampleGroup#example is deprecated and will be removed in RSpec 3. There are a few options for what you can use instead:

  • rspec-core's DSL methods (it, before, after, let, subject, etc) now yield the example as a block argument, and that is the recommended way to access the current example from those contexts.
  • The current example is now exposed via RSpec.current_example, which is accessible from any context.
  • If you can't update the code at this call site (e.g. because it is in an extension gem), you can use this snippet to continue making this method available in RSpec 2.99 and RSpec 3:

    RSpec.configure do |c| c.expose_current_running_example_as :example end

(Called from /Users/robertott/.rbenv/versions/2.2.0/lib/ruby/gems/2.2.0/gems/capybara-2.1.0/lib/capybara/rspec.rb:20:in `block (2 levels) in <top (required)>')

How do I fix this? I have no idea where to look. I'm new to programming.

Thanks, Robert Ott

2 Answers

Maciej Czuchnowski
Maciej Czuchnowski
36,441 Points

This only gives you a heads-up that if you upgrade RSpec to version 3+ in the future, these tests will have to be written in a different way to work. You don't have to do anything to 'fix' this, because nothing is broken and it works fine as long as you have RSpec version 2 and not 3 in the project.