トップ «前の日(01-28) 最新 次の日(01-30)» 追記

3 日坊主日記


2004-01-29

_ 青色LED訴訟

東京地裁。明日だそうです。

_ mod_ruby

mod_ruby環境でエラーになったときの振る舞いを確認する必要がある。


2005-01-29

_ [Rails] test を何度も実行する

Rails はたくさん require するので、start するまでの待ち時間が気になる。なので

require File.dirname(__FILE__) + '/../test_helper'
require 'customer_controller'
  
# Re-raise errors caught by the controller.
class CustomerController; def rescue_action(e) raise e end; end
  
if __FILE__ == $0
  begin
    Dir.glob(File.dirname(__FILE__)+'/customer_controller_test_*.rb') do |ent|
      load ent
    end
    Test::Unit::AutoRunner.run($0 != "-e" && $0)
  end while gets
end

このように、何度も実行できるようにするといいと思う。test を書き換えても反映される (副作用が心配だけど)。

ただ、fixtures を使うと2回目からうまくいかない (fixtures は setup を書き換える)。代わりに create_fixtures を setup に書くようにするとうまくいった。インスタンス変数に格納しなくなる (fixtures.rb 参照) けど、使わないから問題なし。

_ [qmail] tai64nlocal

class TC_Tai64NLocal < Test::Unit::TestCase
  def test_tai64nlocal
    birth = '@4000000041e81818365f8864'
    assert_equal(Time.local(2005,1,15,4,5,50), Time.at(birth[9,8].hex-10))
  end
end

2007-01-29

_ [Capistrano] rollback_migrate タスクを実装するスレ

capistrano の standard recipe は migration の扱いがいまいち。

基本的に migrate タスクは deploy, update 系列と独立している。 deploy_with_migrations だけ連動しているけど、これは rollback できない。デプロイツールとしては片手落ちだ。

やるなら deploy 時点の schema version をどこかに保存しておく必要がある。


2008-01-29

_ [rws][Rails] トランザクションリソース

RESTful Webサービス RESTful Webサービス

久しぶりに本屋に行ったときに衝動買いしてきました。

トランザクションリソース (transaction resource) を導入すると、 確認画面をREST的に無理なく説明できそうな予感。 どうかな。

edit:
  # create transaction resource.
  POST /txns
  201 Created Location: /txns/1
confirm_edit:
  # put obj.
  PUT /txns/1/objs/1
  200 OK <xml/>
update:
  # update obj.
  PUT /objs/1

問題は内部表現 (ARとかsession) だけど。