私はラックアプリケーション(具体的にはSinatraのものですが、それは問題ではないと思います)を持っています。これは、正常に実行されている場合、それに対して行われているリクエストに関する一連の情報をSTDOUTに喜んで出力します。例:
127.0.0.1 - - [25/Jul/2013 10:05:39] "GET /oath2/token?password=ohnoes HTTP/1.1" 404 507 0.0013
ログファイルからパスワードを削除するための拡張機能を作成しようとしているRack::CommonLogger
ので、もちろん、最初のタスクはテストを作成することです。
私はそのようにrack/test
設定しましたrspec
が、送信ログをキャプチャする方法がわからないので、それらの内容をスキャンできます! 何か案は?
require 'my_webapp'
describe "My Webapp" do
include Rack::Test::Methods
def app
@app ||= MyWebapp.new
end
it 'should not log the text of any GET password parameter' do
get '/oauth2/token?password=ohnoes'
# Not sure about this!
log_output.should_not =~ /ohnoes/
end
end