Skip to content

Commit cfb8d2a

Browse files
committed
tests: remove connect dependency
1 parent bdad89c commit cfb8d2a

File tree

2 files changed

+20
-90
lines changed

2 files changed

+20
-90
lines changed

package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
"send": "0.4.0"
1717
},
1818
"devDependencies": {
19-
"connect": "~2.14.1",
2019
"mocha": "~1.20.0",
2120
"should": "~4.0.0",
2221
"supertest": "~0.13.0"

test/test.js

Lines changed: 20 additions & 89 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
11

2-
process.env.NODE_ENV = 'test';
3-
4-
var connect = require('connect');
52
var http = require('http');
63
var path = require('path');
74
var request = require('supertest');
@@ -18,9 +15,6 @@ describe('serveStatic()', function(){
1815
before(function () {
1916
server = createServer();
2017
});
21-
after(function (done) {
22-
server.close(done);
23-
});
2418

2519
it('should serve static files', function(done){
2620
request(server)
@@ -129,9 +123,6 @@ describe('serveStatic()', function(){
129123
before(function () {
130124
server = createServer('.');
131125
});
132-
after(function (done) {
133-
server.close(done);
134-
});
135126

136127
it('should be served with "."', function(done){
137128
var dest = relative.split(path.sep).join('/');
@@ -146,9 +137,6 @@ describe('serveStatic()', function(){
146137
before(function () {
147138
server = createServer(fixtures, {'hidden': true});
148139
});
149-
after(function (done) {
150-
server.close(done);
151-
});
152140

153141
it('should be served when hidden: true is given', function(done){
154142
request(server)
@@ -162,9 +150,6 @@ describe('serveStatic()', function(){
162150
before(function () {
163151
server = createServer(fixtures, {'maxAge': Infinity});
164152
});
165-
after(function (done) {
166-
server.close(done);
167-
});
168153

169154
it('should be reasonable when infinite', function(done){
170155
request(server)
@@ -179,9 +164,6 @@ describe('serveStatic()', function(){
179164
before(function () {
180165
server = createServer();
181166
});
182-
after(function (done) {
183-
server.close(done);
184-
});
185167

186168
it('should respond with 403 Forbidden', function(done){
187169
request(server)
@@ -201,9 +183,6 @@ describe('serveStatic()', function(){
201183
before(function () {
202184
server = createServer();
203185
});
204-
after(function (done) {
205-
server.close(done);
206-
});
207186

208187
it('should next()', function(done){
209188
request(server)
@@ -217,9 +196,6 @@ describe('serveStatic()', function(){
217196
before(function () {
218197
server = createServer();
219198
});
220-
after(function (done) {
221-
server.close(done);
222-
});
223199

224200
it('should support byte ranges', function(done){
225201
request(server)
@@ -319,9 +295,6 @@ describe('serveStatic()', function(){
319295
before(function () {
320296
server = createServer();
321297
});
322-
after(function (done) {
323-
server.close(done);
324-
});
325298

326299
it('should respond with 400', function(done){
327300
request(server)
@@ -335,9 +308,6 @@ describe('serveStatic()', function(){
335308
before(function () {
336309
server = createServer();
337310
});
338-
after(function (done) {
339-
server.close(done);
340-
});
341311

342312
it('should next()', function(done){
343313
var path = Array(100).join('foobar');
@@ -353,9 +323,6 @@ describe('serveStatic()', function(){
353323
before(function () {
354324
server = createServer();
355325
});
356-
after(function (done) {
357-
server.close(done);
358-
});
359326

360327
it('should next()', function(done) {
361328
request(server)
@@ -367,12 +334,10 @@ describe('serveStatic()', function(){
367334
describe('when index at mount point', function(){
368335
var server;
369336
before(function () {
370-
var app = connect();
371-
app.use('/users', serveStatic('test/fixtures/users'));
372-
server = app.listen();
373-
});
374-
after(function (done) {
375-
server.close(done);
337+
server = createServer('test/fixtures/users', null, function (req) {
338+
req.originalUrl = req.url;
339+
req.url = '/' + req.url.split('/').slice(2).join('/');
340+
});
376341
});
377342

378343
it('should redirect correctly', function (done) {
@@ -386,12 +351,10 @@ describe('serveStatic()', function(){
386351
describe('when mounted', function(){
387352
var server;
388353
before(function () {
389-
var app = connect();
390-
app.use('/static', serveStatic(fixtures));
391-
server = app.listen();
392-
});
393-
after(function (done) {
394-
server.close(done);
354+
server = createServer(fixtures, null, function (req) {
355+
req.originalUrl = req.url;
356+
req.url = '/' + req.url.split('/').slice(2).join('/');
357+
});
395358
});
396359

397360
it('should redirect relative to the originalUrl', function(done){
@@ -405,22 +368,10 @@ describe('serveStatic()', function(){
405368
describe('when responding non-2xx or 304', function(){
406369
var server;
407370
before(function () {
408-
var app = connect();
409371
var n = 0;
410-
411-
app.use(function(req, res, next){
412-
switch (n++) {
413-
case 0: return next();
414-
case 1: res.statusCode = 500; return next();
415-
}
372+
server = createServer(fixtures, null, function (req, res) {
373+
if (n++) res.statusCode = 500;
416374
});
417-
418-
app.use(serveStatic(fixtures));
419-
420-
server = app.listen();
421-
});
422-
after(function (done) {
423-
server.close(done);
424375
});
425376

426377
it('should respond as-is', function(done){
@@ -436,38 +387,18 @@ describe('serveStatic()', function(){
436387
});
437388
});
438389
});
439-
440-
describe('raw http server', function(){
441-
var server;
442-
before(function () {
443-
var middleware = serveStatic(fixtures);
444-
server = http.createServer(function (req, res) {
445-
middleware(req, res, function (err) {
446-
res.statusCode = err ? 500 : 404;
447-
res.end(err ? err.stack : '');
448-
});
449-
});
450-
server.listen();
451-
});
452-
after(function (done) {
453-
server.close(done);
454-
});
455-
456-
it('should work on raw node.js http servers', function(done){
457-
request(server)
458-
.get('/todo.txt')
459-
.expect(200, '- groceries', done);
460-
});
461-
});
462390
});
463391

464-
function createServer(dir, opts) {
465-
var app = connect();
392+
function createServer(dir, opts, fn) {
466393
dir = dir || fixtures;
467-
app.use(serveStatic(dir, opts));
468-
app.use(function(req, res){
469-
res.statusCode = 404;
470-
res.end('sorry!');
394+
395+
var _serve = serveStatic(dir, opts);
396+
397+
return http.createServer(function (req, res) {
398+
fn && fn(req, res);
399+
_serve(req, res, function (err) {
400+
res.statusCode = err ? (err.status || 500) : 404;
401+
res.end(err ? err.stack : 'sorry!');
402+
});
471403
});
472-
return app.listen();
473404
}

0 commit comments

Comments
 (0)