@grantex/conformance 0.1.4 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rate-limit-headers.d.ts","sourceRoot":"","sources":["../../src/suites/rate-limit-headers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAA4B,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"rate-limit-headers.d.ts","sourceRoot":"","sources":["../../src/suites/rate-limit-headers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAA4B,MAAM,aAAa,CAAC;AAG7E,eAAO,MAAM,qBAAqB,EAAE,eAsDnC,CAAC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { test, expectStatus, expectNumericHeader } from '../helpers.js';
|
|
2
|
-
const YEAR_2020_EPOCH = 1577836800;
|
|
3
2
|
export const rateLimitHeadersSuite = {
|
|
4
3
|
name: 'rate-limit-headers',
|
|
5
4
|
description: 'Rate limit headers presence and format',
|
|
@@ -12,8 +11,10 @@ export const rateLimitHeadersSuite = {
|
|
|
12
11
|
expectNumericHeader(res, 'x-ratelimit-limit');
|
|
13
12
|
expectNumericHeader(res, 'x-ratelimit-remaining');
|
|
14
13
|
const reset = expectNumericHeader(res, 'x-ratelimit-reset');
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
// Per IETF draft-ietf-httpapi-ratelimit-headers, reset is seconds
|
|
15
|
+
// remaining until the window resets (not a Unix timestamp)
|
|
16
|
+
if (reset < 0 || reset > 3600) {
|
|
17
|
+
throw new Error(`Expected x-ratelimit-reset to be seconds remaining (0–3600), got ${reset}`);
|
|
17
18
|
}
|
|
18
19
|
}));
|
|
19
20
|
results.push(await test('Rate limit headers on token verify endpoint', '§14', async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rate-limit-headers.js","sourceRoot":"","sources":["../../src/suites/rate-limit-headers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAExE,MAAM,
|
|
1
|
+
{"version":3,"file":"rate-limit-headers.js","sourceRoot":"","sources":["../../src/suites/rate-limit-headers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAExE,MAAM,CAAC,MAAM,qBAAqB,GAAoB;IACpD,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE,wCAAwC;IACrD,QAAQ,EAAE,KAAK;IACf,GAAG,EAAE,KAAK,EAAE,GAAiB,EAAyB,EAAE;QACtD,MAAM,OAAO,GAAiB,EAAE,CAAC;QAEjC,OAAO,CAAC,IAAI,CACV,MAAM,IAAI,CAAC,8CAA8C,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;YAC3E,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC7C,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAEvB,mBAAmB,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;YAC9C,mBAAmB,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;YAClD,MAAM,KAAK,GAAG,mBAAmB,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;YAE5D,kEAAkE;YAClE,2DAA2D;YAC3D,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CACb,oEAAoE,KAAK,EAAE,CAC5E,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,CAAC,IAAI,CACV,MAAM,IAAI,CAAC,6CAA6C,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;YAC1E,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;gBACnD,KAAK,EAAE,gCAAgC;aACxC,CAAC,CAAC;YAEH,mBAAmB,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;YAC9C,mBAAmB,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;YAClD,mBAAmB,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;QAChD,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,CAAC,IAAI,CACV,MAAM,IAAI,CAAC,uCAAuC,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;YACpE,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC;YAC1E,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAEvB,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,SAAS,CAAC;YACpE,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CACb,gGAAgG,CACjG,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@grantex/conformance",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.5",
|
|
4
4
|
"description": "Conformance test suite for the Grantex protocol",
|
|
5
|
+
"homepage": "https://grantex.dev",
|
|
6
|
+
"bugs": {
|
|
7
|
+
"url": "https://github.com/mishrasanjeev/grantex/issues"
|
|
8
|
+
},
|
|
5
9
|
"type": "module",
|
|
6
10
|
"bin": {
|
|
7
11
|
"grantex-conformance": "./dist/index.js"
|