@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;AAK7E,eAAO,MAAM,qBAAqB,EAAE,eAoDnC,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
- if (reset < YEAR_2020_EPOCH) {
16
- throw new Error(`Expected x-ratelimit-reset to be a plausible unix timestamp (> ${YEAR_2020_EPOCH}), got ${reset}`);
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,eAAe,GAAG,UAAU,CAAC;AAEnC,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,IAAI,KAAK,GAAG,eAAe,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CACb,kEAAkE,eAAe,UAAU,KAAK,EAAE,CACnG,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"}
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.4",
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"