[short url] Add server tests
This commit is contained in:
parent
49d297fd55
commit
a612a0ed95
|
@ -1,41 +1,87 @@
|
|||
import expect from 'expect.js';
|
||||
import * as kbnTestServer from '../../../../test/utils/kbn_server';
|
||||
import fromRoot from '../../../utils/from_root';
|
||||
|
||||
describe('routes', function () {
|
||||
this.slow(10000);
|
||||
this.timeout(60000);
|
||||
|
||||
describe('cookie validation', function () {
|
||||
let kbnServer;
|
||||
beforeEach(function () {
|
||||
kbnServer = kbnTestServer.createServer();
|
||||
kbnServer = kbnTestServer.createServer({
|
||||
plugins: {
|
||||
scanDirs: [
|
||||
fromRoot('src/plugins')
|
||||
]
|
||||
}
|
||||
});
|
||||
return kbnServer.ready();
|
||||
});
|
||||
afterEach(function () {
|
||||
return kbnServer.close();
|
||||
});
|
||||
|
||||
it('allows non-strict cookies', function (done) {
|
||||
const options = {
|
||||
method: 'GET',
|
||||
url: '/',
|
||||
headers: {
|
||||
cookie: 'test:80=value;test_80=value'
|
||||
}
|
||||
};
|
||||
kbnTestServer.makeRequest(kbnServer, options, (res) => {
|
||||
expect(res.payload).not.to.contain('Invalid cookie header');
|
||||
done();
|
||||
describe('cookie validation', function () {
|
||||
it('allows non-strict cookies', function (done) {
|
||||
const options = {
|
||||
method: 'GET',
|
||||
url: '/',
|
||||
headers: {
|
||||
cookie: 'test:80=value;test_80=value'
|
||||
}
|
||||
};
|
||||
kbnTestServer.makeRequest(kbnServer, options, (res) => {
|
||||
expect(res.payload).not.to.contain('Invalid cookie header');
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('returns an error if the cookie can\'t be parsed', function (done) {
|
||||
const options = {
|
||||
method: 'GET',
|
||||
url: '/',
|
||||
headers: {
|
||||
cookie: 'a'
|
||||
}
|
||||
};
|
||||
kbnTestServer.makeRequest(kbnServer, options, (res) => {
|
||||
expect(res.payload).to.contain('Invalid cookie header');
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
it('returns an error if the cookie can\'t be parsed', function (done) {
|
||||
const options = {
|
||||
method: 'GET',
|
||||
url: '/',
|
||||
headers: {
|
||||
cookie: 'a'
|
||||
describe('url shortener', () => {
|
||||
const shortenOptions = {
|
||||
method: 'POST',
|
||||
url: '/shorten',
|
||||
payload: {
|
||||
url: '/app/kibana#/visualize/create'
|
||||
}
|
||||
};
|
||||
kbnTestServer.makeRequest(kbnServer, options, (res) => {
|
||||
expect(res.payload).to.contain('Invalid cookie header');
|
||||
done();
|
||||
|
||||
it('generates shortened urls', (done) => {
|
||||
kbnTestServer.makeRequest(kbnServer, shortenOptions, (res) => {
|
||||
expect(typeof res.payload).to.be('string');
|
||||
expect(res.payload.length > 0).to.be(true);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('redirects shortened urls', (done) => {
|
||||
kbnTestServer.makeRequest(kbnServer, shortenOptions, (res) => {
|
||||
const gotoOptions = {
|
||||
method: 'GET',
|
||||
url: '/goto/' + res.payload
|
||||
};
|
||||
kbnTestServer.makeRequest(kbnServer, gotoOptions, (res) => {
|
||||
expect(res.statusCode).to.be(302);
|
||||
expect(res.headers.location).to.be(shortenOptions.payload.url);
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
});
|
||||
|
|
Loading…
Reference in a new issue