mirror of
https://github.com/documentationjs/documentation.git
synced 2025-12-08 18:23:43 +00:00
60 lines
1.4 KiB
JavaScript
60 lines
1.4 KiB
JavaScript
const get = require('../utils').get;
|
|
const File = require('vinyl');
|
|
const getPort = require('get-port');
|
|
const Server = require('../../src/serve/server');
|
|
|
|
const jsFile = new File({
|
|
cwd: '/',
|
|
base: '/test/',
|
|
path: '/test/file.js',
|
|
contents: new Buffer('var test = 123;')
|
|
});
|
|
|
|
const coffeeFile = new File({
|
|
cwd: '/',
|
|
base: '/test/',
|
|
path: '/test/file.coffee',
|
|
contents: new Buffer('test = 123')
|
|
});
|
|
|
|
const indexFile = new File({
|
|
cwd: '/',
|
|
base: '/test/',
|
|
path: '/test/index.html',
|
|
contents: new Buffer('<html>')
|
|
});
|
|
|
|
test('server - throws on bad port', function() {
|
|
expect(function() {
|
|
const server = new Server('${port}');
|
|
}).toThrow();
|
|
expect(function() {
|
|
const server = new Server();
|
|
}).toThrow();
|
|
});
|
|
|
|
test('server', async function() {
|
|
const port = await getPort();
|
|
const server = new Server(port, true);
|
|
expect(server).toBeTruthy();
|
|
await server.start();
|
|
try {
|
|
await get(`http://localhost:${port}/file.coffee`);
|
|
} catch (code) {
|
|
expect(code).toEqual(404);
|
|
}
|
|
|
|
server.setFiles([coffeeFile]);
|
|
let text;
|
|
|
|
text = await get(`http://localhost:${port}/file.coffee`);
|
|
expect(text).toMatchSnapshot();
|
|
server.setFiles([coffeeFile, jsFile]);
|
|
text = await get(`http://localhost:${port}/file.js`);
|
|
expect(text).toMatchSnapshot();
|
|
server.setFiles([coffeeFile, indexFile, jsFile]);
|
|
text = await get(`http://localhost:${port}/`);
|
|
expect(text).toMatchSnapshot();
|
|
await server.stop();
|
|
});
|