Skip to content

Instantly share code, notes, and snippets.

@kennu
Last active September 25, 2020 07:48
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kennu/8795821 to your computer and use it in GitHub Desktop.
Save kennu/8795821 to your computer and use it in GitHub Desktop.
Testing Express apps with random ports
# CoffeeScript version
http = require 'http'
express = require 'express'
app = express()
server = http.createServer(app).listen()
app.set 'port', server.address().port
app.get '/', (req, res) -> res.send hello:'world'
baseurl = 'http://127.0.0.1:' + app.get('port') + '/'
console.log 'Testing with URL', baseurl
request = require 'request'
assert = require('chai').assert
describe 'My Express App', ->
it 'should return front page', (done) ->
request baseurl, {json:true}, (err, response, body) ->
assert.ifError err
assert.equal response.statusCode, 200
assert.equal body.hello, 'world'
done()
// JavaScript version
var http = require('http');
var express = require('express');
var app = express();
var server = http.createServer(app).listen();
app.set('port', server.address().port);
app.get('/', function(req, res) { res.send({hello:'world'}); });
var baseurl = 'http://127.0.0.1:' + app.get('port') + '/';
console.log('Testing with URL', baseurl);
var request = require('request');
var assert = require('chai').assert;
describe('My Express App', function() {
it('should return front page', function(done) {
request(baseurl, {json:true}, function(err, response, body) {
assert.ifError(err);
assert.equal(response.statusCode, 200);
assert.equal(body.hello, 'world');
done();
});
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment