Rspecを使ってみたくてRailsはまり道
低レベルな内容だけど晒す。
そもそもはTDDをやってみたくて、RailsのTestよりはRspecをみなさんおつかいのようだからつかってみようと思ったのがはまりの始まり。
環境はMac OS X 10.5。スはスペックのスを眺めつつ、スタート。
sudo gem install rspec
…ですべてが終わるかと思ったら道のりは遠かった。
ruby 1.8.7以上じゃないと駄目、と出る。(gemで出たんだか、rspec実行時に出たんだか、忘れた)
使っていたのはMacOSの1.8.6。1.8.7にするためにportでいれよー。rubygemsもこっちにしよー。
sudo port install ruby
Xcode3.1じゃないと駄目です、というメッセージが出る。思い出した。前もここで挫折したんだ。今Mac Dev Centerに行ってもSnow Leopard用のXcodeしか見つからないので諦めたんだった。
http://stackoverflow.com/questions/1596164/can-i-get-xcode-for-leopard-still
このページで紹介されているurlからXcode3.1.4を落として、インストール。
やっと準備ができた。
sudo port install ruby sudo port install rb-rubygems
わーいruby1.8.7がはいった。/opt/local/binのPATHは切ってあるよ。
さて、NetBeansでもこっちのrubyを使うように設定を変えよう。一応今作ってる奴動くかどうか試してみよう。あれ、エラー。あっそうか、gemの場所が変わったからrailsも入れなおしかぁ。2.3.5で作っていたので、
sudo gem install -v=2.3.5 rails
おっとpostgresのアダプタがないって言われた。
sudo gem install postgres-pr
わーい動いた。さて、rspecもっかい。
sudo gem install rspec sudo gem install rspec-rails
え。なに、入ったけど、rails3.0.0以上じゃないと駄目ですよってメッセージが。まだ3は使わないんですけど。このころようやく、rspecに1と2があるらしいことを知る。が、とりあえず放置。
プラグインもいれたほうがいいって書いてたよね。
script/plugin install git://github.com/dchelimsky/rspec.git dyld: Library not loaded: /opt/local/lib/libcrypto.0.9.8.dylib
なにーーー!!これ、portでいろいろやったせい!?
sudo port install libcryptopp
駄目だわ。0.9.8じゃないと駄目らしい。やだもう、プラグインはあきらめる。
sudo port uninstall libcryptopp
でも、
script/generate rspec
とするも、そんなの知りませんと言われる。じゃ、
sudo gem install -v=1.3.1 rspec sudo gem install -v=1.3.3 rspec-rails
入ったみたい。
script/generate rspec
あ、できたできた。今度こそできた!
そして気がつけば、NetBeansのメニューにも「Rspecテスト」とかあるではないですか。
で、script/generate rspec_modelとかやって、スはスペックのスを見ながらちょこっとやって、あーよかった今日はここまで、と
git add.
とやったらまた!
dyld: Library not loaded: /opt/local/lib/libcrypto.0.9.8.dylib
えええ。git使えないと困るんですけど!これなんとかしなきゃ。ググる。おっ、これ同じ。
http://comments.gmane.org/gmane.os.apple.macports.user/20797
書いてある通りにする。
sudo port selfupdate port outdated sudo port clean outdated sudo port upgrade outdated
やった!gitも動いた。
ひさしぶりにはまりました。ふう。