Solicitações Sinatra, Rack :: Test e GET Condicional

Eu tenho um aplicativo Sinatra 1.2.0 que faz cache de validação da última modificação com o Rack :: Cache. As coisas estão funcionando muito bem - eu chamo last_modified no corpo da minha rota e se o cache tiver uma cópia atualizada, o restante da execução será interrompido, meu aplicativo responderá ao cache com 304 Not Modified e o cache servirá o cache página sem ter que gerar uma nova.

Meu problema é tentar escrever testes para esse processo. Usando Rack :: Test e Minitest :: Spec, estou simulando a solicitação Get condicional do cache da seguinte forma:

  header "If-Modified-Since", (Time.now.midnight + 1.hour).httpdate
  get "/test-url" 
  last_response.status.must_equal 304

No entanto, essa afirmação na última linha falha. O aplicativo ainda está enviando uma mensagem de status 200. Eu poderia estar configurando o pedido errado? O Rack :: Test faz GETs condicionais corretamente? Qualquer conselho seria apreciado

questionAnswers(2)

yourAnswerToTheQuestion