fix(deps)!: mime-types@^3.0.0 (#5882)
[express.git] / test / app.head.js
blobfabb98795abac8e746397d174b373be8645640f3
1 'use strict'
3 var express = require('../');
4 var request = require('supertest');
5 var assert = require('assert');
7 describe('HEAD', function(){
8 it('should default to GET', function(done){
9 var app = express();
11 app.get('/tobi', function(req, res){
12 // send() detects HEAD
13 res.send('tobi');
14 });
16 request(app)
17 .head('/tobi')
18 .expect(200, done);
21 it('should output the same headers as GET requests', function(done){
22 var app = express();
24 app.get('/tobi', function(req, res){
25 // send() detects HEAD
26 res.send('tobi');
27 });
29 request(app)
30 .head('/tobi')
31 .expect(200, function(err, res){
32 if (err) return done(err);
33 var headers = res.headers;
34 request(app)
35 .get('/tobi')
36 .expect(200, function(err, res){
37 if (err) return done(err);
38 delete headers.date;
39 delete res.headers.date;
40 assert.deepEqual(res.headers, headers);
41 done();
42 });
43 });
47 describe('app.head()', function(){
48 it('should override', function(done){
49 var app = express()
51 app.head('/tobi', function(req, res){
52 res.header('x-method', 'head')
53 res.end()
54 });
56 app.get('/tobi', function(req, res){
57 res.header('x-method', 'get')
58 res.send('tobi');
59 });
61 request(app)
62 .head('/tobi')
63 .expect('x-method', 'head')
64 .expect(200, done)