diff --git a/src/router.js b/src/router.js index a6b8525..fe60225 100644 --- a/src/router.js +++ b/src/router.js @@ -12,7 +12,7 @@ low.mixin({ createId: utils.createId }) module.exports = function(source) { // Create router var router = express.Router() - + // Add middlewares router.use(bodyParser.json({limit: '10mb'})) router.use(bodyParser.urlencoded({ extended: false })) @@ -41,6 +41,11 @@ module.exports = function(source) { // GET /*?*&_end= // GET /*?*&_start=&_end= function list(req, res, next) { + // Test if resource exists + if (!db.object.hasOwnProperty(req.params.resource)) { + return res.sendStatus(404) + } + // Filters list var filters = {} diff --git a/test/index.js b/test/index.js index ce6b882..aa8c487 100644 --- a/test/index.js +++ b/test/index.js @@ -59,6 +59,12 @@ describe('Server', function() { .expect(db.posts) .expect(200, done) }) + + it('should respond with 404 if resource is not found', function(done) { + request(server) + .get('/undefined') + .expect(404, done) + }) }) describe('GET /:resource?attr=&attr=', function() {