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

Nicholas Lee
Nicholas Lee
12,474 Points

Why do i have to use bin/spec to run my tests?

When I try to run tests by calling the file name in the terminal without putting bin/spec first I get a permission denied.

Why do i have to have the following code for it to run?

require 'pathname'
ENV['BUNDLE_GEMFILE'] ||= File.expand_path("../../Gemfile",
  Pathname.new(__FILE__).realpath)

require 'rubygems'
require 'bundler/setup'

load Gem.bin_path('rspec-core', 'rspec')

Just curious.

1 Answer

Brandon Barrette
Brandon Barrette
20,485 Points

So you are calling bin/spec to tell the terminal you want to run rspec tests. Much like when we say:

cd Downloads

to change directories. If I just typed "Downloads" the terminal wouldn't know what I was asking it to do. Basically you need "command" and then "file to apply that command".