A Day in the Life

2006-11-06

redgreen

gem install redgreen --source require.errtheblog.com

驚くべきことに、redgreen で検索してもこれっぽっちも引っかからない(そもそも redgreen という名前が SEO 的にアレ)し、本家 rubygems の redgreen パッケージはべつもんだし、というわけでインストール方法をコピペっておく。

キーワード:Rails test アイドル

Fx 2.0 の新機能

http://d.hatena.ne.jp/secondlife/20060713/1152790054

そうだ。OpenSearch は検索だけじゃなくて JSON による suggest もできるのをすっかり忘れてたよ。というのを今日の夕方思いだした。はやく各種辞書サイト対応してくれないかなー。といっても Fx はメインじゃ使ってないわけですが。。

Rails の test 派閥

  • Test::Unit::TestCase派
    • 無難なふつうの人
  • RSpec派
    • BDD!BDD!派。角谷さんはすごい(というか test に対して明確なポリシーを持ってる)のでついて行っても全然問題なさそう
  • Test::Base 派
    • 俺一人><しょっちゅう Ruby の Test::Base の仕様が変わるの(そもそも Test::Base 自体開発中)で注意だ☆←だれもつかわねー

腰リールの弱点

風呂に入る→アイディア思いつく→腰リール無い→書きためられない→風呂から出ると忘れる

どうしたらいいんでしょうか?

Test::Base on Rails functional test

functional test も普通にかけるな。plagger の *.t をみてると Test::Base の有効的な使い方がいろいろわかってきた。assert をデータ側に書いて eval で実行、ってのもありなんだなー。んで、run_tests が定義されてないと test されない今の俺仕様は Test::Base の思想的にダメだな。

そういえば、成功する値や失敗する値って決まっていて、unit / functional / integration なテストでも使い回すことが多いんだけどどうするのがいいんだろ。安易に思い浮かぶのが定数としてどっかに書いておくことだけど、なんかださいナ。。fixtures みたいにどっかに yaml なりなんなりで置いておくのがいいのかしら。というかそもそもそんなことやるテストが間違ってる?

ちなみに今はこんな風にかいてます。

class EntryControllerTest < Test::Base
  fixtures :entries, :comments, :trackbacks, :users
  filters :action => %w(eval), :login => %w(.strip login)

  def login(username)
    @controller.test_login_user = username
  end

  def setup
    @controller = EntryController.new
    @request    = ActionController::TestRequest.new
    @response   = ActionController::TestResponse.new
  end

  def run_tests(spec)
  end
end

__END__
=== entries[] が無いのでエラー
--- login: normal_user
--- action
post :create, :showuser => 'normal_user'
assert_redirected_to :action => :list

=== create 成功
--- login: normal_user
--- action
post :create, :showuser => 'normal_user', :entries => {
  :name => 'test',
  :description => 'test desc',
  :body => "body foobar"
}
assert_redirected_to :action => :show

=== ログインしてないのでエラー
--- action
post :create, :showuser => 'normal_user', :entries => {
  :name => 'test',
  :description => 'test desc',
  :body => "body foobar"
}
assert_redirected_to :action => :list

svn switch --relocate

rails で svn extarnals に svn://rubyforge なリポジトリを入れておいて、自分で権限のあるレポジトリを修正/変更したくなったときは svn+ssh:// なプロトコルに変えたい。

svn switch --relocate svn://rubyforge.org/var/svn/test-base/trunk svn+ssh://secondlife@rubyforge.org/var/svn/test-base/trunk
svn switch --relocate svn+ssh://secondlife@rubyforge.org/var/svn/test-base/trunk svn://rubyforge.org/var/svn/test-base/trunk

のローテーションで。メモ。

Test::Base ruby

あー。エラー時に行わからないとめんどいなぁ。パース時に一緒にファイル/行番号つっこんでおくべきか。

パーフェクトスター・パーフェクトスタイル / perfume

思い出すだけで泣ける通勤途中に泣きそうになったぉ><

記事の一覧 >