Socket
Socket
Sign inDemoInstall

koa-router

Package Overview
Dependencies
Maintainers
1
Versions
91
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

koa-router - npm Package Compare versions

Comparing version 2.4.0 to 2.4.1

7

lib/resource.js

@@ -76,3 +76,8 @@ /**

case 'read':
args = ['GET', baseTrailing + ':' + id, action];
var wrapper = function *(next) {
if (this.params[id] !== 'new') {
yield action.call(this, next);
}
};
args = ['GET', baseTrailing + ':' + id, wrapper];
break;

@@ -79,0 +84,0 @@ case 'edit':

2

package.json

@@ -9,3 +9,3 @@ {

"author": "Alex Mingoia <talk@alexmingoia.com>",
"version": "2.4.0",
"version": "2.4.1",
"keywords": [

@@ -12,0 +12,0 @@ "koa",

@@ -85,2 +85,67 @@ /**

});
it('doesn\'t call multiple controller actions', function(done) {
var app = koa();
var router = new Router(app);
app.use(router.middleware());
var counter = 0;
function *increaseCounter() {
counter++;
this.status = 204;
}
app.resource('threads', {
index: increaseCounter,
new: increaseCounter,
create: increaseCounter,
show: increaseCounter,
edit: increaseCounter,
update: increaseCounter,
destroy: increaseCounter,
});
var server = http.createServer(app.callback());
request(server)
.get('/threads')
.expect(204)
.end(function(err, res) {
if (err) return done(err);
request(server)
.get('/threads/new')
.expect(204)
.end(function(err, res) {
if (err) return done(err);
request(server)
.post('/threads')
.expect(204)
.end(function(err, res) {
if (err) return done(err);
request(server)
.get('/threads/1234')
.expect(204)
.end(function(err, res) {
if (err) return done(err);
request(server)
.get('/threads/1234/edit')
.expect(204)
.end(function(err, res) {
if (err) return done(err);
request(server)
.put('/threads/1234')
.expect(204)
.end(function(err, res) {
if (err) return done(err);
request(server)
.get('/threads/1234')
.expect(204)
.end(function(err, res) {
if (err) return done(err);
counter.should.equal(7);
done();
});
});
});
});
});
});
});
});
});
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc