素でRSpecを使うためのspec_helper.rb
こないだのRakefileと併せて使っていたもの。
- 必要なファイルを読み込む
- DBとの接続を行う(必要な場合)
といったフレームワークがやってくれていることを自前でやるというだけなんですけども。
# -*- coding: utf-8 -*- $TESTING=true $:.unshift File.join(File.dirname(__FILE__), '..', 'lib') $:.unshift File.expand_path(File.join(File.dirname(__FILE__))) require 'rubygems' require 'factory_girl' require 'active_record' require 'active_support/all' ActiveRecord::Base.establish_connection( :adapter => "sqlite3", :database => "db/test.sqlite3", ) Dir[File.join(File.dirname(__FILE__), "..", "lib", "models", "**/*.rb")].each do |f| require f end require File.join(File.dirname(__FILE__), "factories") Dir[File.join(File.dirname(__FILE__), "factories", "**/*.rb")].each do |f| require f end RSpec.configure do |config| end
Rspec.configureではモックのフレームワークに何を使うかなど必要なら指定する。
ほかにもいろいろできるはずなので一度調べておこうかな。
“素でRSpecを使うためのspec_helper.rb” に対して3件のコメントがあります。
コメントは受け付けていません。
rakeファイルとあわせて使うのでしたら、下記のように t.pattern に specファイルのパターンを入れておけば、各specファイルに対応するような lib/modelファイルも見つけてくれるような気がします。
RSpec::Core::RakeTask.new(:spec) do |t|
t.pattern = “./spec/**/*_spec.rb”
end
おーありがとうございます!
今度試してみます。
うーん、ソースをちょっとのぞいてみたところ、テスト対象のファイルを自動で見つけてくれる機能はなさそうです。
よく考えたら必ずしも1クラス1スペックというわけでもないですしね。