タグ

ブックマーク / www.hsbt.org (7)

  • [rack][ruby] rack middleware のテスト - HsbtDiary(2013-05-02)

    ■ [rack][ruby] rack middleware のテスト 最近は test-unit しか使ってないので test-unit と rack-test を使って rack middleware のテストを書く術をメモっておく。例えば response.body に foo という文字列を追加する middleware のテストならこんな感じ。 require 'test/unit' require 'rack/test' require 'rack-foo' class TestApp def call(env) [ 200, { 'Content-Type' => 'text/html' }, ['<html><head></head><body></body></html>'] ] end end class FooTest < Test::Unit::TestCase i

    [rack][ruby] rack middleware のテスト - HsbtDiary(2013-05-02)
    yahihi
    yahihi 2014/05/25
  • [ruby] Ruby の Logger::Application を知った - HsbtDiary(2014-05-14)

    ■ [ruby] RubyLogger::Application を知った 毎週水曜に Ruby の stdlib を写経しながら、何だこの変数名は~とか、こんなメソッドが~みたいなことを有志でやっているんだけど、今日は logger.rb にある Logger::Application というのがあるというのを知った。 https://github.com/ruby/ruby/blob/trunk/lib/logger.rb#L775 要は rake タスクとかでよくやる "start foo", "end foo" みたいなロギングを良い感じにやってくれる奴らしい。応用するとこういうロガーを書ける。 require 'logger' class RakeExcecuter < Logger::Application def initialize(tasklist = []) su

    [ruby] Ruby の Logger::Application を知った - HsbtDiary(2014-05-14)
    yahihi
    yahihi 2014/05/15
  • [rails][ruby] 30d.jp を Rails 2.3 にしましたのお知らせ - HsbtDiary(2013-04-26)

    ■ [rails][ruby] 30d.jp を Rails 2.3 にしましたのお知らせ 去年の 8 月くらいからちまちま進めていた http://30d.jp で使っている Rails をやっとアップグレードできました。2月にはやりたいと思っていたのだけど、色々と困難が立ちはだかって延び延びになってしまいました。以下はメモ。 backgroundrb というメモリにキューイングするジョブワーカーの処理をデータベースを使う delayed_job に書き直した kage を使って番から検証環境にリクエストを横流しして検証していたけど、30d.jp は画像データですげーでかいリクエストがたまにあって、それが来ると番サーバーが突然死するという現象にはまった kyoto tycoon でレプリケーション組んでいる memcached がサーバー構成の関係で結構な頻度で実はタイムアウトしてエ

    [rails][ruby] 30d.jp を Rails 2.3 にしましたのお知らせ - HsbtDiary(2013-04-26)
    yahihi
    yahihi 2013/04/27
  • [github] github.com の readme.md に貼ると格好いいbadge - HsbtDiary(2013-03-18)

    ■ [github] github.com の readme.md に貼ると格好いいbadge 2.0 対応で結構な数のリポジトリを眺めていたら、travis のビルドステータスbadge以外にもあったので並べてみる。 travis-ci .travis.yml を読み込んで CI する奴、説明省略 gemnasium Gemfile を読み込んで dependency が古くなっていたりしないかをチェックする奴、これが放置されている gem は要注意ってシグナルになるのかな。 Code Climate ソースコードの静的解析結果を表示する奴、サイクロマチック複雑度とかそういうの。 coveralls ソースコードのテストカバレージを表示する奴、tDiary を追加しようと思ったけど、登録時にエラーになってまだ表示できていない。 こういうのを見れば、テストを放置するライブラリなんだなとか、

    [github] github.com の readme.md に貼ると格好いいbadge - HsbtDiary(2013-03-18)
    yahihi
    yahihi 2013/03/27
  • [rubygems] 社内向けに rubygems 勉強会を開いた - HsbtDiary(2012-11-28)

    ■ [rubygems] 社内向けに rubygems 勉強会を開いた 資料作ったんですが、ただの箇条書きになったので日記にも箇条書きにします。 基礎編 gem install rails は gem i rails でいいですよ。gem u は unpack とか uninstall と二つ以上あるんで二文字目を入れないとダメです gem pristine rails とすると cache ディレクトリにある rails-x.y.z.gem ファイルを使って再インストールしてくれます。OS のバージョンアップした時なんかは gem pristine --all とすれば便利。 gem list --no-versions したものを xargs にわせる必要は無いです gem cleanup すると古いバージョンが消えます。executable や dependency で y/n 聞

    [rubygems] 社内向けに rubygems 勉強会を開いた - HsbtDiary(2012-11-28)
    yahihi
    yahihi 2012/11/29
  • [rspec][ruby][rails] rspec-rails と capybara のまとめ, [Life] 散髪記録 - HsbtDiary(2012-11-16)

    ■ [rspec][ruby][rails] rspec-rails と capybara のまとめ rspec-rails と capybara をアップデートしたら request spec で click_link が使えなくなったという声を隣席のぱーらー氏方面から聞こえてきたので、ちゃんとコードを読んで新人's に展開しました。 ぶっちゃけ spec_helper.rb で include Capybara::DSL してしまえば動くんですが、rspec や capybara という Rails でテストを書く上で無くてはならないライブラリの間でどのような方法が良いということになったのかを知ることは Rails Way に乗る上で大事なことです。 それぞれがどのように動いているかを理解するにはまず最初に example group というものを読むと理解が進みます。 https:/

    [rspec][ruby][rails] rspec-rails と capybara のまとめ, [Life] 散髪記録 - HsbtDiary(2012-11-16)
    yahihi
    yahihi 2012/11/17
  • [heroku][mongodb] heroku-mongodb というプラグインを作った - HsbtDiary(2012-04-26)

    ■ [heroku][mongodb] heroku-mongodb というプラグインを作った heroku で MongoHQ や MongoLab を使うと ENV['MONGOHQ_URL'] という環境変数に mongodb スキームの url が設定されて、Web アプリケーションではこの値を使ってアクセスをすることになる。 開発する時は mongodb スキームの url を自分でせっせと分解して mongodump や mongorestore を実行してデータをやりとりすることになるんだけど、これがアプリケーションごとにバラバラなので、その都度 -a myapp を付けて heroku config を実行してから環境変数を確認して、url を分解する必要がある。 こんな作業が果てしなくだるいし、シェルの履歴から実行すると暴発する可能性もあるので、heroku の plug

    [heroku][mongodb] heroku-mongodb というプラグインを作った - HsbtDiary(2012-04-26)
  • 1