Rspec does not generate * _spec.rb file in Rails 4 beta

I already have rspec-rails gem installed. When I run rails g model movie showtime_date:date showtime_time:time , I think I should get

 invoke active_record create db/migrate/20130604010556_create_movies.rb create app/models/movie.rb invoke rspec create spec/models/movie_spec.rb 

But when I ran rails g model movie showtime_date:date showtime_time:time I get

 invoke active_record create db/migrate/xxxxxxxxxxx_create_movies.rb create app/models/movie.rb invoke test_unit create test/models/movie_test.rb create test/fixtures/movies.yml 

Is there a problem with my gem package? I am using Rails4 beta. Does this version have a bug or something else?

The BDD for my application looks like this: app/features/show_descripitons.feature

 Feature: Showtime Descriptions As a movie goer I want to see accurate and concise showtimes So that I can find movies that fit my schedule @wip Scenario: Show minutes for times ending with 00 Given a movie When I set the showtime to "2013-05-04" at "2:15pm" Then the showtime description should be "June 04, 2013(2pm)" Scenario: Hide minutes for times ending with 00 Given a movie When I set the showtime to "2013-05-04" at "2:00pm" Then the showtime description should be "June 04, 2013(2pm)" 

and my app/features/step_definition/showtime_descriptions.rb is

 Given(/^a movie$/) do @movie = Movie.create! end When(/^I set the showtime to "(.*?)" at "(.*?)"$/) do |date, time| @movie.update_attribute(:showtime_date, Date.parse(date)) @movie.update_attribute(:showtime_time, time) end Then(/^the showtime description should be "(.*?)"$/) do |showtime| @movie.showtime.showtime eq(showtime) end 
+7
source share
3 answers

I have to put my this code in config / application.rb

  config.generators do |g| g.template_engine :erb g.test_framework :rspec, :fixture => true, :views => false g.integration_tool :rspec, :fixture => true, :views => true g.fixture_replacement :factory_girl, :dir => "spec/support/factories" end 
+10
source

Well, I also ran into a similar issue with 4.1. But in the end, the next ticket helped me solve the problem. https://github.com/rspec/rspec-rails/issues/439

In short, you must make sure that rspec-rails is in the development group, and not just in the test group. With this small change and bundle install I got all the specification files created automatically.

+3
source

It looks like you added RSpec after you created the rails project. You will need to remove the test block generator link. Make sure you run rails g rspec:install and that config/application.rb ( http://edgeguides.rubyonrails.org/generators.html#customizing-your-workflow does not indicate the following:

 g.test_framework :test_unit, fixture: true 

When creating a new rails project, you can omit the test module with the -T, [--skip-test-unit] flag -T, [--skip-test-unit] .

0
source

All Articles