Skip to content

Commit 5305232

Browse files
committed
fix: lower anonymous limit to 250
1 parent 26e2cd6 commit 5305232

File tree

6 files changed

+20
-23
lines changed

6 files changed

+20
-23
lines changed

config/default.cjs

+1-1
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ module.exports = {
8585
resultTTL: 7 * 24 * 60 * 60, // 7 days
8686
rateLimit: {
8787
post: {
88-
anonymousLimit: 10000,
88+
anonymousLimit: 250,
8989
authenticatedLimit: 500,
9090
reset: 3600,
9191
},

config/test.cjs

-3
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,6 @@ module.exports = {
4444
measurement: {
4545
maxInProgressTests: 2,
4646
rateLimit: {
47-
post: {
48-
anonymousLimit: 100000,
49-
},
5047
getPerMeasurement: {
5148
limit: 1000,
5249
},

test/e2e/cases/limits.test.ts

+4-4
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ describe('/limits endpoint', () => {
2222
measurements: {
2323
create: {
2424
type: 'ip',
25-
limit: 100000,
26-
remaining: 100000,
25+
limit: 250,
26+
remaining: 250,
2727
reset: 0,
2828
},
2929
},
@@ -46,8 +46,8 @@ describe('/limits endpoint', () => {
4646

4747
expect(response.body.rateLimit.measurements.create).to.deep.include({
4848
type: 'ip',
49-
limit: 100000,
50-
remaining: 99999,
49+
limit: 250,
50+
remaining: 249,
5151
});
5252
});
5353
});

test/tests/integration/limits.test.ts

+4-4
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,8 @@ describe('rate limiter', () => {
6161
measurements: {
6262
create: {
6363
type: 'ip',
64-
limit: 100000,
65-
remaining: 100000,
64+
limit: 250,
65+
remaining: 250,
6666
reset: 0,
6767
},
6868
},
@@ -82,8 +82,8 @@ describe('rate limiter', () => {
8282
measurements: {
8383
create: {
8484
type: 'ip',
85-
limit: 100000,
86-
remaining: 99999,
85+
limit: 250,
86+
remaining: 249,
8787
reset: 3600,
8888
},
8989
},

test/tests/integration/middleware/authenticate.test.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -225,7 +225,7 @@ describe('authenticate', () => {
225225
});
226226

227227
expect(response.status).to.equal(202);
228-
expect(response.headers['x-ratelimit-limit']).to.equal('100000');
228+
expect(response.headers['x-ratelimit-limit']).to.equal('250');
229229
});
230230

231231
it('should ignore if invalid cookie was passed', async () => {
@@ -241,7 +241,7 @@ describe('authenticate', () => {
241241
});
242242

243243
expect(response.status).to.equal(202);
244-
expect(response.headers['x-ratelimit-limit']).to.equal('100000');
244+
expect(response.headers['x-ratelimit-limit']).to.equal('250');
245245
});
246246

247247
it('should ignore if cookie signed with a different key was passed', async () => {
@@ -257,7 +257,7 @@ describe('authenticate', () => {
257257
});
258258

259259
expect(response.status).to.equal(202);
260-
expect(response.headers['x-ratelimit-limit']).to.equal('100000');
260+
expect(response.headers['x-ratelimit-limit']).to.equal('250');
261261
});
262262
});
263263
});

test/tests/integration/ratelimit.test.ts

+8-8
Original file line numberDiff line numberDiff line change
@@ -122,9 +122,9 @@ describe('rate limiter', () => {
122122
target: 'jsdelivr.com',
123123
}).expect(202) as Response;
124124

125-
expect(response.headers['x-ratelimit-limit']).to.equal('100000');
125+
expect(response.headers['x-ratelimit-limit']).to.equal('250');
126126
expect(response.headers['x-ratelimit-consumed']).to.equal('1');
127-
expect(response.headers['x-ratelimit-remaining']).to.equal('99999');
127+
expect(response.headers['x-ratelimit-remaining']).to.equal('249');
128128
expect(response.headers['x-ratelimit-reset']).to.equal('3600');
129129
expect(response.headers['x-request-cost']).to.equal('1');
130130

@@ -133,9 +133,9 @@ describe('rate limiter', () => {
133133
target: 'jsdelivr.com',
134134
}).expect(202) as Response;
135135

136-
expect(response2.headers['x-ratelimit-limit']).to.equal('100000');
136+
expect(response2.headers['x-ratelimit-limit']).to.equal('250');
137137
expect(response.headers['x-ratelimit-consumed']).to.equal('1');
138-
expect(response2.headers['x-ratelimit-remaining']).to.equal('99998');
138+
expect(response2.headers['x-ratelimit-remaining']).to.equal('248');
139139
expect(response2.headers['x-ratelimit-reset']).to.equal('3600');
140140
expect(response.headers['x-request-cost']).to.equal('1');
141141
});
@@ -190,11 +190,11 @@ describe('rate limiter', () => {
190190
target: 'jsdelivr.com',
191191
}).expect(202) as Response;
192192

193-
expect(response.headers['x-ratelimit-remaining']).to.equal('99999');
193+
expect(response.headers['x-ratelimit-remaining']).to.equal('249');
194194
});
195195

196196
it('should fail (limit reached)', async () => {
197-
await anonymousPostRateLimiter.set(clientIpv6, 100000, 0);
197+
await anonymousPostRateLimiter.set(clientIpv6, 250, 0);
198198

199199
const response = await requestAgent.post('/v1/measurements').send({
200200
type: 'ping',
@@ -205,7 +205,7 @@ describe('rate limiter', () => {
205205
});
206206

207207
it('should consume all points successfully or none at all (cost > remaining > 0)', async () => {
208-
await anonymousPostRateLimiter.set(clientIpv6, 99999, 0); // 1 remaining
208+
await anonymousPostRateLimiter.set(clientIpv6, 249, 0); // 1 remaining
209209

210210
const response = await requestAgent.post('/v1/measurements').send({
211211
type: 'ping',
@@ -293,7 +293,7 @@ describe('rate limiter', () => {
293293
}).expect(202) as Response;
294294

295295
const rateLimiterRes = await anonymousPostRateLimiter.get(`1CJTN06QAyM2JYA3r2FwaSytXEWg1r50xNlUyC1G98w=`);
296-
expect(rateLimiterRes?.remainingPoints).to.equal(99999);
296+
expect(rateLimiterRes?.remainingPoints).to.equal(249);
297297
});
298298
});
299299

0 commit comments

Comments
 (0)