У меня есть приложение Sinatra 1.2.0, которое выполняет Last-Modified кэширование проверки с помощью Rack :: Cache.Все работает отлично - я вызываю last_modified в моем теле маршрута, и если кэш имеет актуальную копию, остальная часть выполнения останавливается, мое приложение отвечает на кэш 304 Not Modified, и кэш обслуживает кешированныйстраница без необходимости создавать новую.
Моя проблема заключается в попытке написать тесты для этого процесса.Используя Rack :: Test и Minitest :: Spec, я имитирую условный запрос Get кеша следующим образом:
header "If-Modified-Since", (Time.now.midnight + 1.hour).httpdate
get "/test-url"
last_response.status.must_equal 304
Однако это утверждение в последней строке не удается.Приложение все еще отправляет 200 статусное сообщение.Могу ли я неправильно настроить запрос?Rack :: Test правильно выполняет условное GET?Любой совет будет оценен.