tDiary で勝手に対応した CoffeeScript をリクエスト時に自動的に CoffeeScript から JavaScript へと変換する処理を tDiary の内部でがっとやるのではなく、rack の middleware として分離して、使いたい人だけが use して使えるようにした。
https://github.com/tdiary/tdiary-core/blob/master/tdiary/rack/assets/precompile.rb
rack のテストってどうやるのかよくわからなかったんだけど、Rack::Test を使って @app に middleware を突っ込む形でテストするんだねえ。勉強になる。
https://github.com/tdiary/tdiary-core/blob/master/spec/core/rack/assets/precompile_spec.rb
こんな感じに tDiary 内部にある Rack 専用っぽい機能は出来るだけ middleware に移動していくつもり。