test: include edge case tests for res.type() (#7037)

This commit is contained in:
Ishita Singh
2026-02-23 15:28:26 +05:30
committed by GitHub
parent c4cc78bdf5
commit b4ab7d65d7

View File

@@ -42,5 +42,74 @@ describe('res', function(){
.get('/')
.expect('Content-Type', 'application/vnd.amazon.ebook', done);
})
describe('edge cases', function(){
it('should handle empty string gracefully', function(done){
var app = express();
app.use(function(req, res){
res.type('').end('test');
});
request(app)
.get('/')
.expect('Content-Type', 'application/octet-stream')
.end(done);
})
it('should handle file extension with dots', function(done){
var app = express();
app.use(function(req, res){
res.type('.json').end('{"test": true}');
});
request(app)
.get('/')
.expect('Content-Type', 'application/json; charset=utf-8')
.end(done);
})
it('should handle multiple file extensions', function(done){
var app = express();
app.use(function(req, res){
res.type('file.tar.gz').end('compressed');
});
request(app)
.get('/')
.expect('Content-Type', 'application/gzip')
.end(done);
})
it('should handle uppercase extensions', function(done){
var app = express();
app.use(function(req, res){
res.type('FILE.JSON').end('{"test": true}');
});
request(app)
.get('/')
.expect('Content-Type', 'application/json; charset=utf-8')
.end(done);
})
it('should handle extension with special characters', function(done){
var app = express();
app.use(function(req, res){
res.type('file@test.json').end('{"test": true}');
});
request(app)
.get('/')
.expect('Content-Type', 'application/json; charset=utf-8')
.end(done);
})
})
})
})