-
Notifications
You must be signed in to change notification settings - Fork 45
/
Copy pathindex.http2.test.js
61 lines (50 loc) · 1.42 KB
/
index.http2.test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
'use strict';
const test = require('ava')
, servers = []
, events = require('harken')
, http2 = require('http2')
, fs = require('fs')
, path = require('path')
, semver = require('semver')
, configStore = require('./utils/config');
test.beforeEach(() => {
configStore.reset();
});
test.afterEach(() => {
const shutDownEvents = events.required([ 'complete' ], () => {
// t.end();
});
servers.forEach((server, i) => {
shutDownEvents.add(`server:${i}`);
server.close(() => {
events.emit(`server:${i}`);
});
});
events.emit('complete');
});
test.cb('should return an http2 server when http2 and correct params are passed in', (t) => {
const http2App = require('./index');
http2App.server({
routeJSONPath: './test_stubs/routes_stub.json'
, routePath: './test_stubs'
, compress: false
, server: http2
, port: 9996
, serverOptions: {
cert: fs.readFileSync(path.join(__dirname, './test_stubs/certs/test.crt'))
, key: fs.readFileSync(path.join(__dirname, './test_stubs/certs/tests.key'))
}
, log: {
log: () => {}
}
});
http2App.events.once('server:started', (settings) => {
servers.push(settings.server);
if (semver.lt(process.versions.node, '8.8.0')) {
t.true(settings.server instanceof http2.Server);
} else {
t.is(settings.server.constructor.name, 'Http2Server');
}
t.end();
});
});