Skip to content

Commit 98f3ef4

Browse files
committed
use supertest and assert port
1 parent e21a852 commit 98f3ef4

File tree

1 file changed

+19
-41
lines changed

1 file changed

+19
-41
lines changed

test/app.listen.js

+19-41
Original file line numberDiff line numberDiff line change
@@ -2,27 +2,10 @@
22

33
var net = require('net')
44
var express = require('../')
5-
var http = require('http');
65
var assert = require('assert');
6+
var request = require('supertest')
77

88
describe('app.listen()', function(){
9-
function makeGetRequest(port, cb){
10-
http
11-
.get('http://localhost:' + port, function(res){
12-
var data = ''
13-
res.on('data', function(chunk){
14-
data += chunk;
15-
});
16-
17-
res.on('end', function(){
18-
cb(null, data);
19-
});
20-
})
21-
.on('error', function(error) {
22-
cb(error, null);
23-
});
24-
}
25-
269
it('should wrap with an HTTP server', function(done){
2710
var app = express();
2811

@@ -32,32 +15,27 @@ describe('app.listen()', function(){
3215
})
3316

3417
it('should listen on the requested port', function (done) {
35-
var expectedResponseBody = 'hello world';
36-
var server;
3718
var app = express()
38-
.get('/', function(req, res){
39-
res.send(expectedResponseBody);
40-
});
4119

42-
getPort(function (openPortError, port) {
43-
if(openPortError !== null) {
44-
return done(openPortError);
45-
}
20+
app.get('/', function (req, res) {
21+
res.json({ port: req.socket.address().port })
22+
})
23+
24+
getPort(function (error, port) {
25+
if (error) return done(error)
4626

47-
server = app.listen(port, function(){
48-
makeGetRequest(port, function(getError, responseBody) {
49-
try {
50-
assert.strictEqual(getError, null);
51-
assert.strictEqual(responseBody, expectedResponseBody)
52-
done()
53-
} catch (error) {
54-
done(error);
55-
} finally {
56-
server.close();
57-
}
58-
});
59-
});
60-
});
27+
assert.strictEqual(typeof port, 'number')
28+
29+
var server = app.listen(port, function () {
30+
request(server)
31+
.get('/')
32+
.expect(200, { port: port }, function (error) {
33+
server.close(function () {
34+
done(error)
35+
})
36+
})
37+
})
38+
})
6139
})
6240
})
6341

0 commit comments

Comments
 (0)