[rspec-users] Newbie question, populate or ignore test db

David Salgado david at digitalronin.com
Mon Jul 21 03:27:34 EDT 2008


Have you created the database "myspec_test"?

If not, try running "rake db:create:all".

If you have created it, then perhaps the test db doesn't have the
right tables. So, try "rake db:test:prepare". You'll need to do that
after every migration as well.

HTH

David


2008/7/21 Teedub <twscannell at gmail.com>:
> Hi,
>
> I have been attempting to get rspec running on Ubuntu without much
> luck.
> I finally got it to go, but I can't figure out how to turn off the
> database access.
>
> I created a new test project named myspec
> Ran
> script/generate rspec
>
> and then so I would have restful routes, ran
> script/generate rspec_scaffold page title:string body:text
>
> Out of the box, 5 of the tests are failing because the test database
> is not being populated. This is probably a config issue, but after
> many hours, I can't figure what to do.
>
> Thanks in advance
>
> ActiveRecord::StatementInvalid in 'Page should create a new instance
> given valid attributes'
> Mysql::Error: Table 'myspec_test.pages' doesn't exist: SHOW FIELDS
> FROM `pages`
> ./spec/models/page_spec.rb:12:
> spec/views/pages/show.html.erb_spec.rb:3:
>
>
> ./spec/models/page_spec.rb:12:
> require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
>
> describe Page do
>  before(:each) do
>    @valid_attributes = {
>      :title => "value for title",
>      :body => "value for body"
>    }
>  end
>
>  it "should create a new instance given valid attributes" do
>    Page.create!(@valid_attributes) #this is line 12
>  end
> end
>
>
> spec/views/pages/show.html.erb_spec.rb:3:
> require File.expand_path(File.dirname(__FILE__) + '/../../
> spec_helper')
>
> describe "/pages/show.html.erb" do
>  include PagesHelper #line 3
>
>  before(:each) do
>    assigns[:page] = @page = stub_model(Page,
>      :title => "value for title",
>      :body => "value for body"
>    )
>  end
>
>  it "should render attributes in <p>" do
>    render "/pages/show.html.erb"
>    response.should have_text(/value\ for\ title/)
>    response.should have_text(/value\ for\ body/)
>  end
> end
> _______________________________________________
> rspec-users mailing list
> rspec-users at rubyforge.org
> http://rubyforge.org/mailman/listinfo/rspec-users
>


More information about the rspec-users mailing list