カテゴリー:
Rspec
タグ:
 Rails Rspec メモ

このエントリーをはてなブックマークに追加
更新日時:
2014年11月16日(日)
作成日時:
2014年11月16日(日)

前の記事 / 次の記事

Railsのアップデートのスピードもやばいけど
Rspecのアップデートのスピードと変化の具合がやばい。

つか例えば大学生活が4年間あるとして、
1年生の時に「Rspecすげー!」とか思ってRspec覚えても
卒業する頃には1年生の頃に覚えたことは既に時代遅れっていう。

を見てたら

it { is_expected.to be_true }

とか書きたくなったのでちょっと頑張ってみた。
けど意外と楽だった。

rspecはrspec-railsで使っている。

今回やったこと

1.一旦Rspecの2.99をインストール
2.2.99で走らせる
3.deprecatedが沢山出るので潰す
4.潰したら3.0.1にアップデート
5.3.0.1で走らせる
6.deprecatedがいくつか出るので潰す
7.平和になる

潰したdeprecated

ind_formatter': Formatter 's' unknown

deprecated っていうかそもそも走らなかったけど、
rspecのコマンドで -fs って渡してたんだけど、
これが非推奨になったので'd' に変更して -fd にした。

Using stub from rspec-mocks' old :should syntax なんたら

参考

stubもexpect記法で書いてねっいう。

これを

obj.stub(:message).and_return(:value)

こうした

allow(obj).to receive(:message).and_return(:value)

inferがなんとか

参考:既存のRailsプロジェクトをRSpec 3.0にアップグレードする際の注意点 ~RSpec 3は怖くないよ!~

これからは格納されたディレクトリによって
何のテスト(モデルなのかコントローラなのかとか)か判別しないので
今まで通り判別して欲しかったら設定ファイルに次の一文を追加せよ、
っていうことなので追加した。

spec/spec_helper.rb
Rspec.configure do |config|
  config.infer_spec_type_from_file_location!
end

追加しなくてもいいと思う。

active_support/dependencies.rb:247:in `require'. とかなんかそんなやつ

参考: Rspec2->Rspec3にバージョンアップしたときのメモ

spec_helper.rb から

require 'rspec/autorun'

を削除