rack.git  about / heads / tags
a modular Ruby webserver interface
blob 73cd31ac02e7221be7b799801ac0b23f92f1363b 601 bytes (raw)
$ git show rack.io:test/spec_rack_etag.rb	# shows this blob on the CLI

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
 
require 'test/spec'
require 'rack/mock'
require 'rack/etag'

context "Rack::ETag" do
  specify "sets ETag if none is set" do
    app = lambda { |env| [200, {'Content-Type' => 'text/plain'}, ["Hello, World!"]] }
    response = Rack::ETag.new(app).call({})
    response[1]['ETag'].should.equal "\"65a8e27d8879283831b664bd8b7f0ad4\""
  end

  specify "does not change ETag if it is already set" do
    app = lambda { |env| [200, {'Content-Type' => 'text/plain', 'ETag' => '"abc"'}, ["Hello, World!"]] }
    response = Rack::ETag.new(app).call({})
    response[1]['ETag'].should.equal "\"abc\""
  end
end

git clone https://yhbt.net/rack.git