1.0.2 • Published 7 years ago
chai-expected-cookie v1.0.2
chai-expected-cookie
Chai plugin for testing HTTP response set-cookie header and it's also support supertest.
Installation
npm install chai-expected-cookie
Usage
Quick example
const chai = require('chai');
const expect = chai.expect;
chai.use(require('chai-http'));
chai.use(require('chai-expected-cookie'));
response = ...
expect(response).to.containCookie({
name: 'key_1',
});
expect(response).to.not.containCookie({
name: 'key_2',
});
expect(response).to.containCookie({
name: 'key_3',
value: 'vk_3'
});
expect(response).to.containCookie({
name: 'key_4',
attrs: {
path: '/path'
}
});
expect(response).to.containCookie({
name: 'key_5',
hasAttrs: [
'httponly'
]
});
expected(response).to.containCookie({
name: 'key_6',
value: 'vk_6',
attrs: {
path: '/path'
},
hasAttrs: [
'httponly'
]
});
Complete example
const chai = require('chai');
const expect = chai.expect;
chai.use(require('chai-http'));
chai.use(require('chai-expected-cookie'));
const express = require('express');
const app = express();
chai.request(app)
.get('/items')
.end(function(err, response) {
expect(response).to.containCookie({
name: 'key_1',
});
expect(response).to.not.containCookie({
name: 'key_2',
});
expect(response).to.containCookie({
name: 'key_3',
value: 'vk_3'
});
expect(response).to.containCookie({
name: 'key_4',
attrs: {
path: '/path'
}
});
expect(response).to.containCookie({
name: 'key_5',
hasAttrs: [
'httponly'
]
});
expected(response).to.containCookie({
name: 'key_6',
value: 'vk_6',
attrs: {
path: '/path'
},
hasAttrs: [
'httponly'
]
});
});
API
containCookie(expectedCookie)
assert cookies with defined criteria is set.
Arguments
expectedCookie
- object represent expected cookie criterianame
- cookie namevalue
- Optional cookie valueattrs
- Optional object cookie of attributeshasAttrs
- Optional array of cookie attribute names
License
MIT