kopia lustrzana https://github.com/c9/core
33 wiersze
990 B
JavaScript
33 wiersze
990 B
JavaScript
![]() |
"use server";
|
||
|
|
||
|
require("c9/inline-mocha")(module);
|
||
|
|
||
|
var ratelimit = require("./ratelimit");
|
||
|
var assert = require("assert");
|
||
|
|
||
|
describe("ratelimit", function() {
|
||
|
it("Should limit based on key", function (done) {
|
||
|
var limiter = ratelimit("test", 10, 1);
|
||
|
limiter({params: {test: 1}}, null, function (err) {
|
||
|
assert(!err, err);
|
||
|
limiter({params: {test: 1}}, null, function (err) {
|
||
|
assert(err);
|
||
|
assert.equal(err.code, 429);
|
||
|
done();
|
||
|
});
|
||
|
});
|
||
|
});
|
||
|
|
||
|
it("Should work again after a delay", function (done) {
|
||
|
var limiter = ratelimit("test", 10, 1);
|
||
|
limiter({params: {test: 1}}, null, function (err) {
|
||
|
assert(!err, err);
|
||
|
setTimeout(function() {
|
||
|
limiter({params: {test: 1}}, null, function (err) {
|
||
|
assert(!err, err);
|
||
|
done();
|
||
|
});
|
||
|
}, 15);
|
||
|
});
|
||
|
});
|
||
|
});
|