У меня есть приложение стойки (в частности, Sinatra one, но я не думаю, что это важно), который при нормальной работе с радостью выводит кучу информации о запросах, которые производятся это 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
Возможно ли, что вы можете поделиться этим регистратором - нам нужно то же самое решение для стойки. –