deps: body-parser@1.20.0
[express.git] / test / req.acceptsLanguages.js
blobe5629fbc3233d3498976e4f15dc28782f22c12ac
1 'use strict'
3 var express = require('../')
4   , request = require('supertest');
6 describe('req', function(){
7   describe('.acceptsLanguages', function(){
8     it('should return language if accepted', function (done) {
9       var app = express();
11       app.get('/', function (req, res) {
12         res.send({
13           'en-us': req.acceptsLanguages('en-us'),
14           en: req.acceptsLanguages('en')
15         })
16       })
18       request(app)
19         .get('/')
20         .set('Accept-Language', 'en;q=.5, en-us')
21         .expect(200, { 'en-us': 'en-us', en: 'en' }, done)
22     })
24     it('should be false if language not accepted', function(done){
25       var app = express();
27       app.get('/', function (req, res) {
28         res.send({
29           es: req.acceptsLanguages('es')
30         })
31       })
33       request(app)
34         .get('/')
35         .set('Accept-Language', 'en;q=.5, en-us')
36         .expect(200, { es: false }, done)
37     })
39     describe('when Accept-Language is not present', function(){
40       it('should always return language', function (done) {
41         var app = express();
43         app.get('/', function (req, res) {
44           res.send({
45             en: req.acceptsLanguages('en'),
46             es: req.acceptsLanguages('es'),
47             jp: req.acceptsLanguages('jp')
48           })
49         })
51         request(app)
52           .get('/')
53           .expect(200, { en: 'en', es: 'es', jp: 'jp' }, done)
54       })
55     })
56   })