@blamejs/blamejs-shop 0.5.12 → 0.5.13
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.
- package/CHANGELOG.md +2 -0
- package/lib/asset-manifest.json +1 -1
- package/lib/vendor/MANIFEST.json +632 -416
- package/lib/vendor/blamejs/.clusterfuzzlite/Dockerfile +21 -10
- package/lib/vendor/blamejs/.clusterfuzzlite/build.sh +30 -9
- package/lib/vendor/blamejs/.github/dependabot.yml +8 -0
- package/lib/vendor/blamejs/.github/workflows/actions-lint.yml +3 -3
- package/lib/vendor/blamejs/.github/workflows/cflite_batch.yml +7 -2
- package/lib/vendor/blamejs/.github/workflows/cflite_pr.yml +7 -2
- package/lib/vendor/blamejs/.github/workflows/ci.yml +21 -21
- package/lib/vendor/blamejs/.github/workflows/codeql.yml +3 -3
- package/lib/vendor/blamejs/.github/workflows/npm-publish.yml +4 -4
- package/lib/vendor/blamejs/.github/workflows/release-container.yml +7 -7
- package/lib/vendor/blamejs/.github/workflows/scorecard.yml +3 -3
- package/lib/vendor/blamejs/.github/workflows/sha-to-tag-verify.yml +1 -1
- package/lib/vendor/blamejs/.gitignore +2 -0
- package/lib/vendor/blamejs/CHANGELOG.md +122 -0
- package/lib/vendor/blamejs/NOTICE +26 -1
- package/lib/vendor/blamejs/SECURITY.md +1 -1
- package/lib/vendor/blamejs/api-snapshot.json +207 -5
- package/lib/vendor/blamejs/docker/keycloak/realm-blamejs-test.json +29 -0
- package/lib/vendor/blamejs/examples/wiki/DEPLOY.md +1 -0
- package/lib/vendor/blamejs/examples/wiki/lib/build-app.js +31 -0
- package/lib/vendor/blamejs/examples/wiki/lib/source-comment-block-validator.js +109 -0
- package/lib/vendor/blamejs/examples/wiki/nginx.conf +106 -0
- package/lib/vendor/blamejs/examples/wiki/package-lock.json +1 -1
- package/lib/vendor/blamejs/examples/wiki/test/e2e.js +92 -0
- package/lib/vendor/blamejs/fuzz/asn1-der.fuzz.js +28 -0
- package/lib/vendor/blamejs/fuzz/cms-codec.fuzz.js +17 -0
- package/lib/vendor/blamejs/fuzz/link-header.fuzz.js +18 -0
- package/lib/vendor/blamejs/index.js +6 -0
- package/lib/vendor/blamejs/lib/a2a.js +4 -4
- package/lib/vendor/blamejs/lib/agent-idempotency.js +18 -2
- package/lib/vendor/blamejs/lib/agent-saga.js +36 -8
- package/lib/vendor/blamejs/lib/agent-snapshot.js +63 -6
- package/lib/vendor/blamejs/lib/app-shutdown.js +23 -20
- package/lib/vendor/blamejs/lib/archive-read.js +8 -0
- package/lib/vendor/blamejs/lib/archive-tar.js +12 -2
- package/lib/vendor/blamejs/lib/arg-parser.js +49 -5
- package/lib/vendor/blamejs/lib/asn1-der.js +12 -0
- package/lib/vendor/blamejs/lib/audit-sign.js +47 -1
- package/lib/vendor/blamejs/lib/audit.js +71 -8
- package/lib/vendor/blamejs/lib/auth/ciba.js +14 -2
- package/lib/vendor/blamejs/lib/auth/fido-mds3.js +58 -47
- package/lib/vendor/blamejs/lib/auth/jwt.js +34 -0
- package/lib/vendor/blamejs/lib/auth/oauth.js +90 -13
- package/lib/vendor/blamejs/lib/auth/oid4vci.js +20 -17
- package/lib/vendor/blamejs/lib/auth/openid-federation.js +214 -23
- package/lib/vendor/blamejs/lib/auth/saml.js +38 -20
- package/lib/vendor/blamejs/lib/auth/sd-jwt-vc.js +10 -4
- package/lib/vendor/blamejs/lib/backup/bundle.js +13 -3
- package/lib/vendor/blamejs/lib/backup/index.js +16 -5
- package/lib/vendor/blamejs/lib/backup/manifest.js +18 -5
- package/lib/vendor/blamejs/lib/base32.js +21 -0
- package/lib/vendor/blamejs/lib/break-glass.js +19 -10
- package/lib/vendor/blamejs/lib/bundler.js +5 -1
- package/lib/vendor/blamejs/lib/cache-status.js +3 -7
- package/lib/vendor/blamejs/lib/calendar.js +21 -1
- package/lib/vendor/blamejs/lib/cbor.js +12 -1
- package/lib/vendor/blamejs/lib/cert.js +29 -11
- package/lib/vendor/blamejs/lib/cli.js +94 -24
- package/lib/vendor/blamejs/lib/cloud-events.js +2 -2
- package/lib/vendor/blamejs/lib/cluster-provider-db.js +13 -3
- package/lib/vendor/blamejs/lib/codepoint-class.js +85 -0
- package/lib/vendor/blamejs/lib/compliance-ai-act-prohibited.js +8 -4
- package/lib/vendor/blamejs/lib/compliance-ai-act-transparency.js +19 -4
- package/lib/vendor/blamejs/lib/compliance-ai-act.js +6 -8
- package/lib/vendor/blamejs/lib/content-credentials.js +1 -1
- package/lib/vendor/blamejs/lib/content-digest.js +2 -1
- package/lib/vendor/blamejs/lib/cookies.js +13 -3
- package/lib/vendor/blamejs/lib/cose.js +31 -16
- package/lib/vendor/blamejs/lib/crypto-field.js +32 -0
- package/lib/vendor/blamejs/lib/crypto-oprf.js +11 -2
- package/lib/vendor/blamejs/lib/crypto-xwing.js +22 -4
- package/lib/vendor/blamejs/lib/crypto.js +314 -19
- package/lib/vendor/blamejs/lib/csp.js +11 -3
- package/lib/vendor/blamejs/lib/daemon.js +270 -24
- package/lib/vendor/blamejs/lib/dark-patterns.js +5 -2
- package/lib/vendor/blamejs/lib/db-declare-view.js +2 -2
- package/lib/vendor/blamejs/lib/db-query.js +34 -7
- package/lib/vendor/blamejs/lib/db.js +18 -6
- package/lib/vendor/blamejs/lib/dbsc.js +17 -0
- package/lib/vendor/blamejs/lib/dev.js +21 -2
- package/lib/vendor/blamejs/lib/dsr.js +157 -102
- package/lib/vendor/blamejs/lib/external-db.js +41 -2
- package/lib/vendor/blamejs/lib/file-upload.js +25 -7
- package/lib/vendor/blamejs/lib/flag-providers.js +27 -15
- package/lib/vendor/blamejs/lib/forms.js +113 -27
- package/lib/vendor/blamejs/lib/gate-contract.js +23 -10
- package/lib/vendor/blamejs/lib/gdpr-ropa.js +8 -1
- package/lib/vendor/blamejs/lib/guard-agent-registry.js +1 -1
- package/lib/vendor/blamejs/lib/guard-archive.js +2 -2
- package/lib/vendor/blamejs/lib/guard-cidr.js +27 -1
- package/lib/vendor/blamejs/lib/guard-graphql.js +30 -11
- package/lib/vendor/blamejs/lib/guard-html.js +26 -53
- package/lib/vendor/blamejs/lib/guard-image.js +24 -5
- package/lib/vendor/blamejs/lib/guard-imap-command.js +10 -2
- package/lib/vendor/blamejs/lib/guard-jmap.js +19 -3
- package/lib/vendor/blamejs/lib/guard-jwt.js +18 -2
- package/lib/vendor/blamejs/lib/guard-list-unsubscribe.js +2 -2
- package/lib/vendor/blamejs/lib/guard-managesieve-command.js +10 -2
- package/lib/vendor/blamejs/lib/guard-markdown.js +11 -24
- package/lib/vendor/blamejs/lib/guard-pdf.js +18 -2
- package/lib/vendor/blamejs/lib/guard-pop3-command.js +10 -2
- package/lib/vendor/blamejs/lib/guard-regex.js +8 -5
- package/lib/vendor/blamejs/lib/guard-svg.js +31 -32
- package/lib/vendor/blamejs/lib/guard-time.js +1 -1
- package/lib/vendor/blamejs/lib/guard-uuid.js +2 -2
- package/lib/vendor/blamejs/lib/html-balance.js +3 -3
- package/lib/vendor/blamejs/lib/http-client-cache.js +82 -4
- package/lib/vendor/blamejs/lib/http-client-cookie-jar.js +16 -1
- package/lib/vendor/blamejs/lib/http-client.js +39 -7
- package/lib/vendor/blamejs/lib/http-message-signature.js +35 -1
- package/lib/vendor/blamejs/lib/i18n-messageformat.js +31 -6
- package/lib/vendor/blamejs/lib/i18n.js +35 -21
- package/lib/vendor/blamejs/lib/incident-report.js +8 -1
- package/lib/vendor/blamejs/lib/ip-utils.js +11 -1
- package/lib/vendor/blamejs/lib/json-path.js +23 -1
- package/lib/vendor/blamejs/lib/jwk.js +20 -3
- package/lib/vendor/blamejs/lib/link-header.js +2 -1
- package/lib/vendor/blamejs/lib/log-stream-otlp-grpc.js +5 -1
- package/lib/vendor/blamejs/lib/log-stream-otlp.js +5 -1
- package/lib/vendor/blamejs/lib/log-stream.js +8 -3
- package/lib/vendor/blamejs/lib/mail-auth.js +123 -22
- package/lib/vendor/blamejs/lib/mail-bimi.js +1 -1
- package/lib/vendor/blamejs/lib/mail-bounce.js +8 -0
- package/lib/vendor/blamejs/lib/mail-crypto-pgp.js +46 -10
- package/lib/vendor/blamejs/lib/mail-dav.js +22 -3
- package/lib/vendor/blamejs/lib/mail-dkim.js +96 -30
- package/lib/vendor/blamejs/lib/mail-helo.js +6 -1
- package/lib/vendor/blamejs/lib/mail-scan.js +23 -16
- package/lib/vendor/blamejs/lib/mail-send-deliver.js +34 -8
- package/lib/vendor/blamejs/lib/mail-server-imap.js +3 -4
- package/lib/vendor/blamejs/lib/mail-server-managesieve.js +7 -11
- package/lib/vendor/blamejs/lib/mail-server-mx.js +93 -7
- package/lib/vendor/blamejs/lib/mail-server-registry.js +8 -2
- package/lib/vendor/blamejs/lib/mail.js +15 -5
- package/lib/vendor/blamejs/lib/metrics.js +268 -63
- package/lib/vendor/blamejs/lib/middleware/age-gate.js +7 -1
- package/lib/vendor/blamejs/lib/middleware/asyncapi-serve.js +1 -1
- package/lib/vendor/blamejs/lib/middleware/body-parser.js +19 -4
- package/lib/vendor/blamejs/lib/middleware/bot-guard.js +5 -9
- package/lib/vendor/blamejs/lib/middleware/csp-report.js +40 -8
- package/lib/vendor/blamejs/lib/middleware/csrf-protect.js +24 -10
- package/lib/vendor/blamejs/lib/middleware/dpop.js +10 -5
- package/lib/vendor/blamejs/lib/middleware/index.js +6 -1
- package/lib/vendor/blamejs/lib/middleware/nel.js +1 -1
- package/lib/vendor/blamejs/lib/middleware/openapi-serve.js +1 -1
- package/lib/vendor/blamejs/lib/middleware/rate-limit.js +12 -1
- package/lib/vendor/blamejs/lib/middleware/require-bound-key.js +1 -1
- package/lib/vendor/blamejs/lib/middleware/scim-server.js +1 -1
- package/lib/vendor/blamejs/lib/middleware/tus-upload.js +6 -2
- package/lib/vendor/blamejs/lib/mtls-ca.js +18 -2
- package/lib/vendor/blamejs/lib/network-dns-resolver.js +11 -1
- package/lib/vendor/blamejs/lib/network-dns.js +21 -2
- package/lib/vendor/blamejs/lib/network-tls.js +69 -7
- package/lib/vendor/blamejs/lib/nonce-store.js +9 -1
- package/lib/vendor/blamejs/lib/object-store/gcs.js +7 -0
- package/lib/vendor/blamejs/lib/object-store/sigv4.js +31 -0
- package/lib/vendor/blamejs/lib/observability-otlp-exporter.js +1 -1
- package/lib/vendor/blamejs/lib/outbox.js +1 -1
- package/lib/vendor/blamejs/lib/parsers/safe-ini.js +9 -1
- package/lib/vendor/blamejs/lib/parsers/safe-toml.js +10 -1
- package/lib/vendor/blamejs/lib/permissions.js +6 -3
- package/lib/vendor/blamejs/lib/pid-probe.js +55 -0
- package/lib/vendor/blamejs/lib/pqc-agent.js +8 -1
- package/lib/vendor/blamejs/lib/pqc-software.js +3 -3
- package/lib/vendor/blamejs/lib/pubsub.js +20 -9
- package/lib/vendor/blamejs/lib/queue-local.js +8 -1
- package/lib/vendor/blamejs/lib/queue-redis.js +5 -0
- package/lib/vendor/blamejs/lib/redact.js +54 -0
- package/lib/vendor/blamejs/lib/restore-bundle.js +10 -2
- package/lib/vendor/blamejs/lib/restore.js +19 -0
- package/lib/vendor/blamejs/lib/retention.js +12 -4
- package/lib/vendor/blamejs/lib/router.js +60 -6
- package/lib/vendor/blamejs/lib/safe-buffer.js +69 -0
- package/lib/vendor/blamejs/lib/safe-decompress.js +8 -2
- package/lib/vendor/blamejs/lib/safe-dns.js +25 -20
- package/lib/vendor/blamejs/lib/safe-ical.js +7 -3
- package/lib/vendor/blamejs/lib/safe-mime.js +12 -1
- package/lib/vendor/blamejs/lib/safe-object.js +80 -0
- package/lib/vendor/blamejs/lib/safe-path.js +52 -4
- package/lib/vendor/blamejs/lib/safe-redirect.js +10 -2
- package/lib/vendor/blamejs/lib/safe-schema.js +4 -1
- package/lib/vendor/blamejs/lib/safe-sieve.js +33 -1
- package/lib/vendor/blamejs/lib/safe-sql.js +88 -0
- package/lib/vendor/blamejs/lib/safe-vcard.js +7 -3
- package/lib/vendor/blamejs/lib/scheduler.js +8 -1
- package/lib/vendor/blamejs/lib/security-assert.js +6 -6
- package/lib/vendor/blamejs/lib/self-update-standalone-verifier.js +74 -27
- package/lib/vendor/blamejs/lib/self-update.js +517 -87
- package/lib/vendor/blamejs/lib/server-timing.js +2 -4
- package/lib/vendor/blamejs/lib/session.js +34 -12
- package/lib/vendor/blamejs/lib/sql.js +15 -1
- package/lib/vendor/blamejs/lib/ssrf-guard.js +52 -0
- package/lib/vendor/blamejs/lib/static.js +55 -13
- package/lib/vendor/blamejs/lib/storage.js +8 -2
- package/lib/vendor/blamejs/lib/subject.js +6 -1
- package/lib/vendor/blamejs/lib/tenant-quota.js +52 -13
- package/lib/vendor/blamejs/lib/tls-exporter.js +3 -3
- package/lib/vendor/blamejs/lib/tsa.js +34 -13
- package/lib/vendor/blamejs/lib/uri-template.js +8 -1
- package/lib/vendor/blamejs/lib/vault/index.js +13 -0
- package/lib/vendor/blamejs/lib/vc.js +44 -5
- package/lib/vendor/blamejs/lib/vendor/MANIFEST.json +26 -26
- package/lib/vendor/blamejs/lib/vendor/noble-ciphers.cjs +792 -1
- package/lib/vendor/blamejs/lib/vendor/noble-curves.cjs +3443 -1
- package/lib/vendor/blamejs/lib/vendor/noble-post-quantum.cjs +2737 -1
- package/lib/vendor/blamejs/lib/vendor/pki.cjs +39550 -13
- package/lib/vendor/blamejs/lib/vendor/public-suffix-list.dat +55 -53
- package/lib/vendor/blamejs/lib/vendor/public-suffix-list.data.js +5551 -5554
- package/lib/vendor/blamejs/lib/vendor/simplewebauthn-server.cjs +22459 -32
- package/lib/vendor/blamejs/lib/watcher.js +89 -17
- package/lib/vendor/blamejs/lib/webhook-dispatcher.js +25 -3
- package/lib/vendor/blamejs/lib/webhook.js +12 -2
- package/lib/vendor/blamejs/lib/ws-client.js +32 -1
- package/lib/vendor/blamejs/lib/xml-c14n.js +29 -1
- package/lib/vendor/blamejs/oss-fuzz/projects/blamejs/Dockerfile +1 -1
- package/lib/vendor/blamejs/package-lock.json +2 -2
- package/lib/vendor/blamejs/package.json +1 -1
- package/lib/vendor/blamejs/release-notes/v0.16.x.json +1462 -0
- package/lib/vendor/blamejs/release-notes/v0.17.0.json +31 -0
- package/lib/vendor/blamejs/release-notes/v0.17.1.json +31 -0
- package/lib/vendor/blamejs/release-notes/v0.17.10.json +30 -0
- package/lib/vendor/blamejs/release-notes/v0.17.11.json +22 -0
- package/lib/vendor/blamejs/release-notes/v0.17.12.json +18 -0
- package/lib/vendor/blamejs/release-notes/v0.17.13.json +77 -0
- package/lib/vendor/blamejs/release-notes/v0.17.14.json +40 -0
- package/lib/vendor/blamejs/release-notes/v0.17.15.json +18 -0
- package/lib/vendor/blamejs/release-notes/v0.17.16.json +27 -0
- package/lib/vendor/blamejs/release-notes/v0.17.17.json +31 -0
- package/lib/vendor/blamejs/release-notes/v0.17.18.json +18 -0
- package/lib/vendor/blamejs/release-notes/v0.17.19.json +18 -0
- package/lib/vendor/blamejs/release-notes/v0.17.2.json +26 -0
- package/lib/vendor/blamejs/release-notes/v0.17.20.json +43 -0
- package/lib/vendor/blamejs/release-notes/v0.17.21.json +26 -0
- package/lib/vendor/blamejs/release-notes/v0.17.22.json +18 -0
- package/lib/vendor/blamejs/release-notes/v0.17.3.json +43 -0
- package/lib/vendor/blamejs/release-notes/v0.17.4.json +35 -0
- package/lib/vendor/blamejs/release-notes/v0.17.5.json +26 -0
- package/lib/vendor/blamejs/release-notes/v0.17.6.json +26 -0
- package/lib/vendor/blamejs/release-notes/v0.17.7.json +35 -0
- package/lib/vendor/blamejs/release-notes/v0.17.8.json +22 -0
- package/lib/vendor/blamejs/release-notes/v0.17.9.json +26 -0
- package/lib/vendor/blamejs/scripts/validate-source-comment-blocks.js +4 -0
- package/lib/vendor/blamejs/scripts/vendor-update.sh +293 -9
- package/lib/vendor/blamejs/socket.yml +94 -0
- package/lib/vendor/blamejs/test/00-primitives.js +605 -0
- package/lib/vendor/blamejs/test/helpers/drivers.js +12 -9
- package/lib/vendor/blamejs/test/integration/audit-stack-mysql.test.js +90 -1
- package/lib/vendor/blamejs/test/integration/audit-stack-postgres.test.js +122 -1
- package/lib/vendor/blamejs/test/integration/data-layer-mysql.test.js +30 -0
- package/lib/vendor/blamejs/test/integration/data-layer-pg.test.js +29 -0
- package/lib/vendor/blamejs/test/integration/dsr-cluster-mysql.test.js +479 -0
- package/lib/vendor/blamejs/test/integration/dsr-cluster-pg.test.js +487 -0
- package/lib/vendor/blamejs/test/integration/federation-auth.test.js +313 -5
- package/lib/vendor/blamejs/test/integration/mail-dkim.test.js +80 -0
- package/lib/vendor/blamejs/test/integration/openid-federation-chain.test.js +275 -0
- package/lib/vendor/blamejs/test/integration/webhook-dispatcher-pg.test.js +96 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/a2a-tasks.test.js +401 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/acme.test.js +1649 -2
- package/lib/vendor/blamejs/test/layer-0-primitives/age-gate.test.js +33 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/agent-idempotency.test.js +0 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/agent-saga.test.js +60 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/agent-snapshot.test.js +524 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/api-encrypt.test.js +891 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/app-shutdown.test.js +128 -1
- package/lib/vendor/blamejs/test/layer-0-primitives/archive-adapters.test.js +271 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/archive-read.test.js +628 -1
- package/lib/vendor/blamejs/test/layer-0-primitives/archive-tar-read.test.js +0 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/archive-wrap.test.js +227 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/arg-parser.test.js +15 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/asn1-der.test.js +73 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/atomic-file.test.js +114 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/audit-sign-anchor.test.js +141 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/audit-tools.test.js +624 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/audit.test.js +769 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/auth-jwt-defenses.test.js +436 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/auth-oauth.test.js +1697 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/auth-oid4vp.test.js +495 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/auth-password.test.js +500 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/auth-saml.test.js +1809 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/auth-status-list.test.js +243 -1
- package/lib/vendor/blamejs/test/layer-0-primitives/backup-index.test.js +2226 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/backup-manifest-signature.test.js +183 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/base32.test.js +105 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/break-glass.test.js +693 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/cache.test.js +603 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/calendar.test.js +557 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/case-insensitive-security-token-guard.test.js +214 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/cbor.test.js +25 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/cert.test.js +843 -6
- package/lib/vendor/blamejs/test/layer-0-primitives/ciba-authreqid-binding.test.js +77 -2
- package/lib/vendor/blamejs/test/layer-0-primitives/ciba.test.js +866 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/clear-site-data.test.js +18 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/cli-erase.test.js +19 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/cli.test.js +2790 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/cluster-lease-renewal-ttl.test.js +114 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/cluster.test.js +1032 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/cms-codec.test.js +575 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/codebase-patterns.test.js +739 -1
- package/lib/vendor/blamejs/test/layer-0-primitives/codepoint-class.test.js +8 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/compliance-ai-act.test.js +194 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/compliance-lifecycle-proto-key.test.js +104 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/compliance-sanctions.test.js +254 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/content-credentials.test.js +613 -3
- package/lib/vendor/blamejs/test/layer-0-primitives/cookies.test.js +140 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/cose.test.js +407 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/crypto-adversarial.test.js +352 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/crypto-field-derived-hash.test.js +32 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/crypto-field.test.js +575 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/crypto-hash-files-parallel.test.js +10 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/crypto-hash-stream.test.js +24 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/crypto-oprf.test.js +17 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/crypto-spki-pin.test.js +183 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/crypto-xwing.test.js +48 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/crypto.test.js +345 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/csp-report.test.js +58 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/csv.test.js +48 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/daemon.test.js +459 -1
- package/lib/vendor/blamejs/test/layer-0-primitives/dark-patterns.test.js +19 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/db-query.test.js +1019 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/db-raw-residency-gate.test.js +77 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/db.test.js +1621 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/ddl-change-control.test.js +462 -3
- package/lib/vendor/blamejs/test/layer-0-primitives/dnssec.test.js +323 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/dpop-middleware-verify.test.js +562 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/dsr.test.js +901 -1
- package/lib/vendor/blamejs/test/layer-0-primitives/dual-control.test.js +249 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/external-db-migrate.test.js +561 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/external-db.test.js +1214 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/fal.test.js +21 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/fedcm-dbsc.test.js +46 -20
- package/lib/vendor/blamejs/test/layer-0-primitives/federation-vc-suite.test.js +147 -3
- package/lib/vendor/blamejs/test/layer-0-primitives/fido-mds3.test.js +907 -38
- package/lib/vendor/blamejs/test/layer-0-primitives/file-upload-content-safety-skip-audit.test.js +29 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/file-upload.test.js +1135 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/flag.test.js +30 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/forms.test.js +747 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/gate-contract.test.js +1855 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/gdpr-ropa.test.js +30 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-archive.test.js +86 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-auth.test.js +117 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-cidr.test.js +151 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-domain.test.js +422 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-filename.test.js +424 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/{guard-gate-disposition-coverage.test.js → guard-gate-disposition.test.js} +1 -1
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-graphql.test.js +340 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-html.test.js +29 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-idempotency-key.test.js +28 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-image.test.js +519 -45
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-imap-command.test.js +0 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-jmap.test.js +51 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-jsonpath.test.js +66 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-jwt.test.js +436 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-managesieve-command.test.js +25 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-markdown.test.js +16 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-mime.test.js +86 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-oauth.test.js +140 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-pdf.test.js +80 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-pop3-command.test.js +27 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-regex.test.js +99 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-shell.test.js +76 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/{guard-sql-coverage.test.js → guard-sql.test.js} +3 -3
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-svg.test.js +524 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-template.test.js +71 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-time.test.js +92 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/guard-uuid.test.js +86 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/html-balance.test.js +38 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/http-client-cache-authorization.test.js +347 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/http-client-cache.test.js +908 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/http-client.test.js +2874 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/http-message-signature.test.js +643 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/i18n-messageformat.test.js +38 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/i18n.test.js +1153 -1
- package/lib/vendor/blamejs/test/layer-0-primitives/idempotency-key.test.js +494 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/ip-utils.test.js +30 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/jsdoc-example-execution.test.js +177 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/json-path.test.js +103 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/json-schema.test.js +214 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/jwk.test.js +41 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/jwt-external.test.js +276 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/keychain.test.js +0 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/log-stream.test.js +241 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/log.test.js +106 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-agent.test.js +441 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-auth.test.js +2136 -4
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-bimi.test.js +759 -12
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-bounce.test.js +811 -1
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-crypto-pgp-experimental.test.js +401 -3
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-crypto-pgp.test.js +751 -8
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-crypto-smime.test.js +864 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-crypto.test.js +110 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-dav.test.js +830 -1
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-deploy.test.js +635 -86
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-dkim.test.js +818 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-helo.test.js +27 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-scan.test.js +199 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-send-deliver.test.js +686 -2
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-imap.test.js +778 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-jmap.test.js +1438 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-managesieve.test.js +449 -6
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-mx.test.js +773 -2
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-pop3.test.js +623 -3
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-rate-limit.test.js +55 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-registry.test.js +13 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-submission.test.js +877 -1
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-sieve.test.js +326 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-store-fts.test.js +55 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-store.test.js +242 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/mail.test.js +1596 -2
- package/lib/vendor/blamejs/test/layer-0-primitives/mcp.test.js +440 -4
- package/lib/vendor/blamejs/test/layer-0-primitives/metrics-snapshot.test.js +89 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/metrics.test.js +1230 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/middleware-assetlinks.test.js +113 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/middleware-body-parser.test.js +1169 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/middleware-bot-disclose.test.js +123 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/middleware-cookies.test.js +108 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/middleware-gpc.test.js +121 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/middleware-headers.test.js +163 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/middleware-host-allowlist.test.js +154 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/middleware-require-content-type.test.js +127 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/{middleware-tus-upload-coverage.test.js → middleware-tus-upload.test.js} +45 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/middleware-web-app-manifest.test.js +132 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/mtls-ca-crl-fingerprint-only.test.js +92 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/network-dns-resolver.test.js +65 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/network-dns.test.js +1727 -1
- package/lib/vendor/blamejs/test/layer-0-primitives/network-nts.test.js +699 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/network-smtp-policy.test.js +1181 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/network-tls.test.js +1876 -3
- package/lib/vendor/blamejs/test/layer-0-primitives/network.test.js +32 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/nonce-store-enforce-replay-nonboolean.test.js +81 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/ntp-check.test.js +122 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/observability-tracing.test.js +378 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/observability.test.js +77 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/oid4vci.test.js +1016 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/openid-federation.test.js +946 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/outbox.test.js +818 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/own-property-membership-guards.test.js +109 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/parsers-safe-toml.test.js +543 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/{parsers-safe-yaml-coverage.test.js → parsers-safe-yaml.test.js} +2 -2
- package/lib/vendor/blamejs/test/layer-0-primitives/parsers-standalone.test.js +73 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/passkey.test.js +649 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/permissions.test.js +524 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/pqc-agent-curve.test.js +22 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/pubsub.test.js +295 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/queue-flow-repeat.test.js +36 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/queue.test.js +83 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/rate-limit-xff-spoofing.test.js +34 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/redact.test.js +1031 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/request-helpers.test.js +94 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/require-bound-key.test.js +401 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/restore-empty-manifest-wipe.test.js +154 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/retention.test.js +600 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/router-host-path-injection.test.js +231 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/router-tls0rtt.test.js +21 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/router.test.js +1277 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/safe-async.test.js +133 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/safe-buffer-linear-scans.test.js +14 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/safe-buffer.test.js +80 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/safe-decompress.test.js +28 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/safe-dns.test.js +245 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/safe-ical.test.js +32 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/safe-ini.test.js +376 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/safe-json.test.js +175 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/safe-mime.test.js +518 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/safe-object.test.js +62 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/safe-path.test.js +30 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/safe-schema.test.js +104 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/safe-sql.test.js +142 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/safe-url.test.js +112 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/safe-vcard.test.js +26 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/scheduler.test.js +157 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/scim-server.test.js +396 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/sd-jwt-vc.test.js +930 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/security-assert.test.js +755 -82
- package/lib/vendor/blamejs/test/layer-0-primitives/self-update.test.js +1053 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/session-device-binding.test.js +200 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/session-strict-binding-missing-failclosed.test.js +110 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/sigv4-bucket-ops.test.js +636 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/sql-offset-without-limit.test.js +94 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/sql.test.js +1190 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/ssrf-guard.test.js +21 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/static.test.js +850 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/storage-presigned-url.test.js +146 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/storage.test.js +621 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/subject.test.js +47 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/template.test.js +582 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/tenant-quota.test.js +587 -25
- package/lib/vendor/blamejs/test/layer-0-primitives/time.test.js +11 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/tsa.test.js +524 -63
- package/lib/vendor/blamejs/test/layer-0-primitives/uri-template.test.js +27 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/vault-rotate.test.js +866 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/vault.test.js +74 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/vc.test.js +215 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/watcher.test.js +550 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/webhook-dispatcher.test.js +388 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/webhook.test.js +262 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/websocket.test.js +1294 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/ws-client.test.js +629 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/xml-c14n-attr-normalization.test.js +164 -0
- package/lib/vendor/blamejs/test/smoke.js +2 -0
- package/package.json +1 -1
- package/lib/vendor/blamejs/release-notes/v0.16.0.json +0 -44
- package/lib/vendor/blamejs/release-notes/v0.16.1.json +0 -36
- package/lib/vendor/blamejs/release-notes/v0.16.2.json +0 -71
- package/lib/vendor/blamejs/release-notes/v0.16.3.json +0 -71
- package/lib/vendor/blamejs/test/layer-0-primitives/acme-coverage.test.js +0 -441
- package/lib/vendor/blamejs/test/layer-0-primitives/auth-oauth-coverage.test.js +0 -482
- package/lib/vendor/blamejs/test/layer-0-primitives/auth-saml-coverage.test.js +0 -671
- package/lib/vendor/blamejs/test/layer-0-primitives/backup-index-coverage.test.js +0 -690
- package/lib/vendor/blamejs/test/layer-0-primitives/cli-coverage.test.js +0 -238
- package/lib/vendor/blamejs/test/layer-0-primitives/content-credentials-coverage.test.js +0 -319
- package/lib/vendor/blamejs/test/layer-0-primitives/keychain-coverage.test.js +0 -0
- package/lib/vendor/blamejs/test/layer-0-primitives/mail-auth-coverage.test.js +0 -437
- package/lib/vendor/blamejs/test/layer-0-primitives/mcp-coverage.test.js +0 -443
- package/lib/vendor/blamejs/test/layer-0-primitives/metrics-coverage.test.js +0 -395
- package/lib/vendor/blamejs/test/layer-0-primitives/network-smtp-policy-coverage.test.js +0 -565
- package/lib/vendor/blamejs/test/layer-0-primitives/router-coverage.test.js +0 -592
- package/lib/vendor/blamejs/test/layer-0-primitives/sql-coverage.test.js +0 -422
- package/lib/vendor/blamejs/test/layer-0-primitives/test-coverage.test.js +0 -573
|
@@ -1,441 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
-
// Copyright (c) blamejs contributors
|
|
3
|
-
"use strict";
|
|
4
|
-
/**
|
|
5
|
-
* b.acme — additional coverage for the config-time validation surface,
|
|
6
|
-
* the pure PKCS#10 CSR builder, and the offline-reachable order /
|
|
7
|
-
* challenge / revoke / deactivate guards.
|
|
8
|
-
*
|
|
9
|
-
* Companion to acme.test.js: that file pins the create-time refusals,
|
|
10
|
-
* keyAuthorization shape, AKI/serial refusal, and the v0.8.83 surface.
|
|
11
|
-
* This file drives the branches those tests leave uncovered — every
|
|
12
|
-
* assertion runs offline (no CA round-trip): create() key-normalization
|
|
13
|
-
* paths, buildCsr across P-256 / P-384 / RSA (with signature
|
|
14
|
-
* verification), and the validation throws that fire before any signed
|
|
15
|
-
* POST leaves the process.
|
|
16
|
-
*/
|
|
17
|
-
|
|
18
|
-
var helpers = require("../helpers");
|
|
19
|
-
var b = helpers.b;
|
|
20
|
-
var check = helpers.check;
|
|
21
|
-
|
|
22
|
-
var nodeCrypto = require("node:crypto");
|
|
23
|
-
|
|
24
|
-
function _newKey() {
|
|
25
|
-
return nodeCrypto.generateKeyPairSync("ec", { namedCurve: "P-256" });
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
function _handle() {
|
|
29
|
-
var k = _newKey();
|
|
30
|
-
return b.acme.create({
|
|
31
|
-
directory: "https://ca.example.test/directory",
|
|
32
|
-
accountKey: k.privateKey,
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
// Capture the AcmeError code from a synchronous throw.
|
|
37
|
-
function _codeOf(fn) {
|
|
38
|
-
try { fn(); return null; }
|
|
39
|
-
catch (e) { return (e && e.code) || null; }
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
// Capture the AcmeError code from a rejected promise.
|
|
43
|
-
async function _acode(promise) {
|
|
44
|
-
try { await promise; return "NO-THROW"; }
|
|
45
|
-
catch (e) { return (e && e.code) || ("PLAIN:" + (e && e.message)); }
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
// ---- minimal DER TLV reader — used ONLY to verify buildCsr output ----
|
|
49
|
-
// (definite-form length; returns the byte boundaries of one TLV).
|
|
50
|
-
function _readTLV(buf, off) {
|
|
51
|
-
var lenByte = buf[off + 1];
|
|
52
|
-
var contentStart, contentLen;
|
|
53
|
-
if (lenByte < 0x80) {
|
|
54
|
-
contentLen = lenByte;
|
|
55
|
-
contentStart = off + 2;
|
|
56
|
-
} else {
|
|
57
|
-
var n = lenByte & 0x7f;
|
|
58
|
-
contentLen = 0;
|
|
59
|
-
for (var i = 0; i < n; i += 1) contentLen = (contentLen * 256) + buf[off + 2 + i];
|
|
60
|
-
contentStart = off + 2 + n;
|
|
61
|
-
}
|
|
62
|
-
return {
|
|
63
|
-
tag: buf[off],
|
|
64
|
-
contentStart: contentStart,
|
|
65
|
-
contentLen: contentLen,
|
|
66
|
-
tlvEnd: contentStart + contentLen,
|
|
67
|
-
};
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
function _csrPemToDer(pem) {
|
|
71
|
-
var b64 = pem
|
|
72
|
-
.replace(/-----BEGIN CERTIFICATE REQUEST-----/, "")
|
|
73
|
-
.replace(/-----END CERTIFICATE REQUEST-----/, "")
|
|
74
|
-
.replace(/\s+/g, "");
|
|
75
|
-
return Buffer.from(b64, "base64");
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
// Verify the signature inside a CSR: signature is over the DER of the
|
|
79
|
-
// first child (CertificationRequestInfo) using the supplied public key.
|
|
80
|
-
function _csrSignatureVerifies(pem, publicKey, digest) {
|
|
81
|
-
var der = _csrPemToDer(pem);
|
|
82
|
-
var outer = _readTLV(der, 0); // CertificationRequest SEQUENCE
|
|
83
|
-
var cri = _readTLV(der, outer.contentStart); // certReqInfo SEQUENCE (child 0)
|
|
84
|
-
var criTlv = der.subarray(outer.contentStart, cri.tlvEnd);
|
|
85
|
-
var sigAlg = _readTLV(der, cri.tlvEnd); // signatureAlgorithm (child 1)
|
|
86
|
-
var sigBit = _readTLV(der, sigAlg.tlvEnd); // signature BIT STRING (child 2)
|
|
87
|
-
// BIT STRING content: first byte = unused-bits count (0), rest = sig.
|
|
88
|
-
var sig = der.subarray(sigBit.contentStart + 1, sigBit.tlvEnd);
|
|
89
|
-
var v = nodeCrypto.createVerify(digest);
|
|
90
|
-
v.update(criTlv);
|
|
91
|
-
return v.verify(publicKey, sig);
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
// ---- create(): directory + accountKey normalization branches ----
|
|
95
|
-
|
|
96
|
-
function testCreateRefusesMissingDirectory() {
|
|
97
|
-
var k = _newKey();
|
|
98
|
-
check("create refuses missing directory",
|
|
99
|
-
_codeOf(function () { b.acme.create({ accountKey: k.privateKey }); }) === "acme/bad-directory");
|
|
100
|
-
check("create refuses empty directory string",
|
|
101
|
-
_codeOf(function () {
|
|
102
|
-
b.acme.create({ directory: "", accountKey: k.privateKey });
|
|
103
|
-
}) === "acme/bad-directory");
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
function testCreateRefusesMissingAccountKey() {
|
|
107
|
-
check("create refuses missing accountKey",
|
|
108
|
-
_codeOf(function () {
|
|
109
|
-
b.acme.create({ directory: "https://ca.example.test/directory" });
|
|
110
|
-
}) === "acme/bad-account-key");
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
function testCreateRefusesPublicKeyObject() {
|
|
114
|
-
var k = _newKey();
|
|
115
|
-
// A public KeyObject is not "private", carries no privatePem and no
|
|
116
|
-
// nested privateKey → the create() normalizer must refuse it.
|
|
117
|
-
check("create refuses a public KeyObject as accountKey",
|
|
118
|
-
_codeOf(function () {
|
|
119
|
-
b.acme.create({ directory: "https://ca.example.test/directory", accountKey: k.publicKey });
|
|
120
|
-
}) === "acme/bad-account-key");
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
function testCreateAcceptsPrivatePem() {
|
|
124
|
-
var k = _newKey();
|
|
125
|
-
var privatePem = k.privateKey.export({ type: "pkcs8", format: "pem" });
|
|
126
|
-
var acme = b.acme.create({
|
|
127
|
-
directory: "https://ca.example.test/directory",
|
|
128
|
-
accountKey: { privatePem: privatePem },
|
|
129
|
-
});
|
|
130
|
-
var jwk = acme.publicJwk();
|
|
131
|
-
check("create accepts { privatePem } and derives the P-256 public JWK",
|
|
132
|
-
jwk.kty === "EC" && jwk.crv === "P-256" &&
|
|
133
|
-
typeof jwk.x === "string" && typeof jwk.y === "string");
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
function testCreateAcceptsNestedPrivateKey() {
|
|
137
|
-
var k = _newKey();
|
|
138
|
-
var acme = b.acme.create({
|
|
139
|
-
directory: "https://ca.example.test/directory",
|
|
140
|
-
accountKey: { privateKey: k.privateKey },
|
|
141
|
-
});
|
|
142
|
-
check("create accepts { privateKey: KeyObject } nested shape",
|
|
143
|
-
acme.publicJwk().kty === "EC");
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
function testCreateRefusesBadPrivatePem() {
|
|
147
|
-
check("create refuses an unparseable privatePem",
|
|
148
|
-
_codeOf(function () {
|
|
149
|
-
b.acme.create({
|
|
150
|
-
directory: "https://ca.example.test/directory",
|
|
151
|
-
accountKey: { privatePem: "-----BEGIN PRIVATE KEY-----\nnope\n-----END PRIVATE KEY-----" },
|
|
152
|
-
});
|
|
153
|
-
}) === "acme/bad-account-key");
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
function testCreateRefusesUnknownOpt() {
|
|
157
|
-
var k = _newKey();
|
|
158
|
-
var threw = null;
|
|
159
|
-
try {
|
|
160
|
-
b.acme.create({
|
|
161
|
-
directory: "https://ca.example.test/directory",
|
|
162
|
-
accountKey: k.privateKey,
|
|
163
|
-
bogusOption: true,
|
|
164
|
-
});
|
|
165
|
-
} catch (e) { threw = e; }
|
|
166
|
-
// validateOpts throws a plain Error (code-shaped message) for typos.
|
|
167
|
-
check("create refuses an unknown opt key (typo guard)",
|
|
168
|
-
threw && /unknown option 'bogusOption'/.test(threw.message || ""));
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
function testCreateContactShapeBranches() {
|
|
172
|
-
var k = _newKey();
|
|
173
|
-
function mk(contact) {
|
|
174
|
-
return b.acme.create({
|
|
175
|
-
directory: "https://ca.example.test/directory",
|
|
176
|
-
accountKey: k.privateKey,
|
|
177
|
-
contact: contact,
|
|
178
|
-
});
|
|
179
|
-
}
|
|
180
|
-
check("create refuses a non-array contact",
|
|
181
|
-
_codeOf(function () { mk("mailto:ops@example.com"); }) === "acme/bad-contact");
|
|
182
|
-
var longContact = "mailto:" + "a".repeat(300) + "@example.com";
|
|
183
|
-
check("create refuses an over-length contact URI",
|
|
184
|
-
_codeOf(function () { mk([longContact]); }) === "acme/bad-contact");
|
|
185
|
-
check("create accepts a valid mailto contact",
|
|
186
|
-
typeof mk(["mailto:ops@example.com"]).newAccount === "function");
|
|
187
|
-
check("create accepts a valid tel contact",
|
|
188
|
-
typeof mk(["tel:+15551234567"]).newAccount === "function");
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
// ---- getters + pure key-derived helpers ----
|
|
192
|
-
|
|
193
|
-
function testGettersNullBeforeLifecycle() {
|
|
194
|
-
var acme = _handle();
|
|
195
|
-
check("accountUrl() is null before newAccount()", acme.accountUrl() === null);
|
|
196
|
-
check("directory() is null before fetchDirectory()", acme.directory() === null);
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
function testPublicJwkReturnsIsolatedCopy() {
|
|
200
|
-
var acme = _handle();
|
|
201
|
-
var j = acme.publicJwk();
|
|
202
|
-
j.x = "TAMPERED";
|
|
203
|
-
j.injected = "x";
|
|
204
|
-
check("publicJwk() returns a fresh copy (mutation does not leak back)",
|
|
205
|
-
acme.publicJwk().x !== "TAMPERED" && acme.publicJwk().injected === undefined);
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
function testKeyAuthorizationDeterministicAndDistinct() {
|
|
209
|
-
var acme = _handle();
|
|
210
|
-
var a1 = acme.keyAuthorization("tokenA");
|
|
211
|
-
var a2 = acme.keyAuthorization("tokenA");
|
|
212
|
-
var b1 = acme.keyAuthorization("tokenB");
|
|
213
|
-
check("keyAuthorization is deterministic for the same token", a1 === a2);
|
|
214
|
-
check("keyAuthorization differs across tokens", a1 !== b1);
|
|
215
|
-
// token + "." + thumbprint — the thumbprint segment is base64url.
|
|
216
|
-
check("keyAuthorization thumbprint segment is base64url",
|
|
217
|
-
/^tokenA\.[A-Za-z0-9_-]+$/.test(a1));
|
|
218
|
-
}
|
|
219
|
-
|
|
220
|
-
function testTlsAlpn01KeyAuthorization() {
|
|
221
|
-
var acme = _handle();
|
|
222
|
-
var digest = acme.tlsAlpn01KeyAuthorization("tok-xyz");
|
|
223
|
-
check("tlsAlpn01KeyAuthorization returns a 32-byte SHA-256 Buffer",
|
|
224
|
-
Buffer.isBuffer(digest) && digest.length === 32);
|
|
225
|
-
// RFC 8737: digest == SHA-256(keyAuthorization(token)).
|
|
226
|
-
var expected = nodeCrypto.createHash("sha256")
|
|
227
|
-
.update(acme.keyAuthorization("tok-xyz"), "utf8").digest();
|
|
228
|
-
check("tlsAlpn01KeyAuthorization == SHA-256(keyAuthorization(token))",
|
|
229
|
-
Buffer.compare(digest, expected) === 0);
|
|
230
|
-
check("tlsAlpn01KeyAuthorization refuses an empty token",
|
|
231
|
-
_codeOf(function () { acme.tlsAlpn01KeyAuthorization(""); }) === "acme/bad-token");
|
|
232
|
-
check("tlsAlpn01KeyAuthorization refuses a non-string token",
|
|
233
|
-
_codeOf(function () { acme.tlsAlpn01KeyAuthorization(123); }) === "acme/bad-token");
|
|
234
|
-
}
|
|
235
|
-
|
|
236
|
-
function testDnsAccount01ValidationBeforeAccount() {
|
|
237
|
-
var acme = _handle();
|
|
238
|
-
// token + identifier validation fire BEFORE the accountUrl guard.
|
|
239
|
-
check("dnsAccount01ChallengeRecord refuses an empty token",
|
|
240
|
-
_codeOf(function () {
|
|
241
|
-
acme.dnsAccount01ChallengeRecord("", { identifier: "example.com" });
|
|
242
|
-
}) === "acme/bad-token");
|
|
243
|
-
check("dnsAccount01ChallengeRecord refuses a non-string token",
|
|
244
|
-
_codeOf(function () {
|
|
245
|
-
acme.dnsAccount01ChallengeRecord(42, { identifier: "example.com" });
|
|
246
|
-
}) === "acme/bad-token");
|
|
247
|
-
check("dnsAccount01ChallengeRecord refuses a missing identifier",
|
|
248
|
-
_codeOf(function () {
|
|
249
|
-
acme.dnsAccount01ChallengeRecord("tok", {});
|
|
250
|
-
}) === "acme/bad-identifier");
|
|
251
|
-
check("dnsAccount01ChallengeRecord refuses an over-length identifier",
|
|
252
|
-
_codeOf(function () {
|
|
253
|
-
acme.dnsAccount01ChallengeRecord("tok", { identifier: "a".repeat(300) });
|
|
254
|
-
}) === "acme/bad-identifier");
|
|
255
|
-
}
|
|
256
|
-
|
|
257
|
-
// ---- buildCsr: pure PKCS#10 builder ----
|
|
258
|
-
|
|
259
|
-
function testBuildCsrInputValidation() {
|
|
260
|
-
var acme = _handle();
|
|
261
|
-
var ec = _newKey();
|
|
262
|
-
check("buildCsr refuses missing opts",
|
|
263
|
-
_codeOf(function () { acme.buildCsr(); }) === "acme/bad-csr-opts");
|
|
264
|
-
check("buildCsr refuses a non-private privateKey",
|
|
265
|
-
_codeOf(function () {
|
|
266
|
-
acme.buildCsr({ privateKey: ec.publicKey, publicKey: ec.publicKey, domains: ["x.com"] });
|
|
267
|
-
}) === "acme/bad-csr-private-key");
|
|
268
|
-
check("buildCsr refuses a non-public publicKey",
|
|
269
|
-
_codeOf(function () {
|
|
270
|
-
acme.buildCsr({ privateKey: ec.privateKey, publicKey: ec.privateKey, domains: ["x.com"] });
|
|
271
|
-
}) === "acme/bad-csr-public-key");
|
|
272
|
-
check("buildCsr refuses a non-array domains",
|
|
273
|
-
_codeOf(function () {
|
|
274
|
-
acme.buildCsr({ privateKey: ec.privateKey, publicKey: ec.publicKey, domains: "x.com" });
|
|
275
|
-
}) === "acme/bad-csr-domains");
|
|
276
|
-
check("buildCsr refuses an empty domains array",
|
|
277
|
-
_codeOf(function () {
|
|
278
|
-
acme.buildCsr({ privateKey: ec.privateKey, publicKey: ec.publicKey, domains: [] });
|
|
279
|
-
}) === "acme/bad-csr-domains");
|
|
280
|
-
check("buildCsr refuses a non-string domain element",
|
|
281
|
-
_codeOf(function () {
|
|
282
|
-
acme.buildCsr({ privateKey: ec.privateKey, publicKey: ec.publicKey, domains: [123] });
|
|
283
|
-
}) === "acme/bad-csr-domain");
|
|
284
|
-
check("buildCsr refuses an empty domain element",
|
|
285
|
-
_codeOf(function () {
|
|
286
|
-
acme.buildCsr({ privateKey: ec.privateKey, publicKey: ec.publicKey, domains: [""] });
|
|
287
|
-
}) === "acme/bad-csr-domain");
|
|
288
|
-
check("buildCsr refuses an over-length domain element",
|
|
289
|
-
_codeOf(function () {
|
|
290
|
-
acme.buildCsr({ privateKey: ec.privateKey, publicKey: ec.publicKey, domains: ["a".repeat(300)] });
|
|
291
|
-
}) === "acme/bad-csr-domain");
|
|
292
|
-
}
|
|
293
|
-
|
|
294
|
-
function testBuildCsrP256() {
|
|
295
|
-
var acme = _handle();
|
|
296
|
-
var pair = nodeCrypto.generateKeyPairSync("ec", { namedCurve: "P-256" });
|
|
297
|
-
var csr = acme.buildCsr({
|
|
298
|
-
privateKey: pair.privateKey,
|
|
299
|
-
publicKey: pair.publicKey,
|
|
300
|
-
domains: ["example.com", "www.example.com"],
|
|
301
|
-
});
|
|
302
|
-
check("buildCsr (P-256) emits a CERTIFICATE REQUEST PEM",
|
|
303
|
-
csr.indexOf("-----BEGIN CERTIFICATE REQUEST-----") === 0 &&
|
|
304
|
-
csr.indexOf("-----END CERTIFICATE REQUEST-----") !== -1);
|
|
305
|
-
check("buildCsr (P-256) produces a signature that verifies (ecdsa-with-SHA256)",
|
|
306
|
-
_csrSignatureVerifies(csr, pair.publicKey, "sha256"));
|
|
307
|
-
}
|
|
308
|
-
|
|
309
|
-
function testBuildCsrP384() {
|
|
310
|
-
var acme = _handle();
|
|
311
|
-
var pair = nodeCrypto.generateKeyPairSync("ec", { namedCurve: "P-384" });
|
|
312
|
-
var csr = acme.buildCsr({
|
|
313
|
-
privateKey: pair.privateKey,
|
|
314
|
-
publicKey: pair.publicKey,
|
|
315
|
-
domains: ["p384.example.com"],
|
|
316
|
-
});
|
|
317
|
-
check("buildCsr (P-384) produces a signature that verifies (ecdsa-with-SHA384)",
|
|
318
|
-
_csrSignatureVerifies(csr, pair.publicKey, "sha384"));
|
|
319
|
-
}
|
|
320
|
-
|
|
321
|
-
function testBuildCsrRsa() {
|
|
322
|
-
var acme = _handle();
|
|
323
|
-
var pair = nodeCrypto.generateKeyPairSync("rsa", { modulusLength: 2048 });
|
|
324
|
-
var csr = acme.buildCsr({
|
|
325
|
-
privateKey: pair.privateKey,
|
|
326
|
-
publicKey: pair.publicKey,
|
|
327
|
-
domains: ["rsa.example.com"],
|
|
328
|
-
});
|
|
329
|
-
check("buildCsr (RSA-2048) produces a signature that verifies (sha256WithRSAEncryption)",
|
|
330
|
-
_csrSignatureVerifies(csr, pair.publicKey, "sha256"));
|
|
331
|
-
}
|
|
332
|
-
|
|
333
|
-
function testBuildCsrRejectsUnsupportedKeys() {
|
|
334
|
-
var acme = _handle();
|
|
335
|
-
var ed = nodeCrypto.generateKeyPairSync("ed25519");
|
|
336
|
-
check("buildCsr rejects Ed25519 leaf keys",
|
|
337
|
-
_codeOf(function () {
|
|
338
|
-
acme.buildCsr({ privateKey: ed.privateKey, publicKey: ed.publicKey, domains: ["ed.example.com"] });
|
|
339
|
-
}) === "acme/bad-csr-key-type");
|
|
340
|
-
var p521 = nodeCrypto.generateKeyPairSync("ec", { namedCurve: "secp521r1" });
|
|
341
|
-
check("buildCsr rejects an unsupported ECDSA curve (P-521)",
|
|
342
|
-
_codeOf(function () {
|
|
343
|
-
acme.buildCsr({ privateKey: p521.privateKey, publicKey: p521.publicKey, domains: ["p521.example.com"] });
|
|
344
|
-
}) === "acme/bad-csr-curve");
|
|
345
|
-
}
|
|
346
|
-
|
|
347
|
-
// ---- offline-reachable order / challenge / revoke / deactivate guards ----
|
|
348
|
-
|
|
349
|
-
async function testFinalizeValidation() {
|
|
350
|
-
var acme = _handle();
|
|
351
|
-
check("finalize refuses a null order",
|
|
352
|
-
(await _acode(acme.finalize(null, Buffer.from([1])))) === "acme/bad-order");
|
|
353
|
-
check("finalize refuses an order without a finalize URL",
|
|
354
|
-
(await _acode(acme.finalize({}, Buffer.from([1])))) === "acme/bad-order");
|
|
355
|
-
check("finalize refuses a CSR that is neither Buffer nor PEM string",
|
|
356
|
-
(await _acode(acme.finalize({ finalize: "https://ca.example.test/f" }, 12345))) === "acme/bad-csr");
|
|
357
|
-
check("finalize refuses a CSR string without the PEM marker",
|
|
358
|
-
(await _acode(acme.finalize({ finalize: "https://ca.example.test/f" }, "xxxxx"))) === "acme/bad-csr");
|
|
359
|
-
check("finalize refuses an empty CSR buffer",
|
|
360
|
-
(await _acode(acme.finalize({ finalize: "https://ca.example.test/f" }, Buffer.alloc(0)))) === "acme/bad-csr");
|
|
361
|
-
check("finalize refuses an oversize CSR buffer (> 64 KiB)",
|
|
362
|
-
(await _acode(acme.finalize({ finalize: "https://ca.example.test/f" }, Buffer.alloc(64 * 1024 + 1)))) === "acme/bad-csr");
|
|
363
|
-
}
|
|
364
|
-
|
|
365
|
-
async function testSignedPostNeedsDirectory() {
|
|
366
|
-
// A well-formed finalize call clears validation, then the first signed
|
|
367
|
-
// POST demands a fetched directory for the nonce — surfaced offline.
|
|
368
|
-
var acme = _handle();
|
|
369
|
-
var pair = nodeCrypto.generateKeyPairSync("ec", { namedCurve: "P-256" });
|
|
370
|
-
var csr = acme.buildCsr({ privateKey: pair.privateKey, publicKey: pair.publicKey, domains: ["x.example.com"] });
|
|
371
|
-
check("a signed POST without a fetched directory throws acme/no-directory",
|
|
372
|
-
(await _acode(acme.finalize({ finalize: "https://ca.example.test/f", url: "https://ca.example.test/o" }, csr))) === "acme/no-directory");
|
|
373
|
-
}
|
|
374
|
-
|
|
375
|
-
async function testRevokeCertRejectsNonBuffer() {
|
|
376
|
-
var acme = _handle();
|
|
377
|
-
check("revokeCert refuses a non-Buffer cert argument",
|
|
378
|
-
(await _acode(acme.revokeCert("not-a-buffer"))) === "acme/revoke-bad-cert");
|
|
379
|
-
}
|
|
380
|
-
|
|
381
|
-
async function testDeactivateAccountNeedsAccount() {
|
|
382
|
-
var acme = _handle();
|
|
383
|
-
check("deactivateAccount refuses before newAccount()",
|
|
384
|
-
(await _acode(acme.deactivateAccount())) === "acme/no-account");
|
|
385
|
-
}
|
|
386
|
-
|
|
387
|
-
async function testChallengeUrlValidation() {
|
|
388
|
-
var acme = _handle();
|
|
389
|
-
check("fetchAuthorization refuses an empty authUrl",
|
|
390
|
-
(await _acode(acme.fetchAuthorization(""))) === "acme/bad-auth-url");
|
|
391
|
-
check("notifyChallengeReady refuses an empty challengeUrl",
|
|
392
|
-
(await _acode(acme.notifyChallengeReady(""))) === "acme/bad-challenge-url");
|
|
393
|
-
}
|
|
394
|
-
|
|
395
|
-
async function testFetchAriRejectsUnparseableCert() {
|
|
396
|
-
var acme = _handle();
|
|
397
|
-
// Carries the BEGIN marker (clears the string check) but is not a
|
|
398
|
-
// parseable X.509 — the second guard (X509 parse) must reject it.
|
|
399
|
-
var fakePem = "-----BEGIN CERTIFICATE-----\nQUJD\n-----END CERTIFICATE-----";
|
|
400
|
-
check("fetchAri rejects a marker-bearing but unparseable certPem",
|
|
401
|
-
(await _acode(acme.fetchAri({ certPem: fakePem }))) === "acme/bad-cert");
|
|
402
|
-
}
|
|
403
|
-
|
|
404
|
-
async function run() {
|
|
405
|
-
testCreateRefusesMissingDirectory();
|
|
406
|
-
testCreateRefusesMissingAccountKey();
|
|
407
|
-
testCreateRefusesPublicKeyObject();
|
|
408
|
-
testCreateAcceptsPrivatePem();
|
|
409
|
-
testCreateAcceptsNestedPrivateKey();
|
|
410
|
-
testCreateRefusesBadPrivatePem();
|
|
411
|
-
testCreateRefusesUnknownOpt();
|
|
412
|
-
testCreateContactShapeBranches();
|
|
413
|
-
testGettersNullBeforeLifecycle();
|
|
414
|
-
testPublicJwkReturnsIsolatedCopy();
|
|
415
|
-
testKeyAuthorizationDeterministicAndDistinct();
|
|
416
|
-
testTlsAlpn01KeyAuthorization();
|
|
417
|
-
testDnsAccount01ValidationBeforeAccount();
|
|
418
|
-
testBuildCsrInputValidation();
|
|
419
|
-
testBuildCsrP256();
|
|
420
|
-
testBuildCsrP384();
|
|
421
|
-
testBuildCsrRsa();
|
|
422
|
-
testBuildCsrRejectsUnsupportedKeys();
|
|
423
|
-
await testFinalizeValidation();
|
|
424
|
-
await testSignedPostNeedsDirectory();
|
|
425
|
-
await testRevokeCertRejectsNonBuffer();
|
|
426
|
-
await testDeactivateAccountNeedsAccount();
|
|
427
|
-
await testChallengeUrlValidation();
|
|
428
|
-
await testFetchAriRejectsUnparseableCert();
|
|
429
|
-
}
|
|
430
|
-
|
|
431
|
-
module.exports = { run: run };
|
|
432
|
-
|
|
433
|
-
// Allow direct execution: `node test/layer-0-primitives/acme-coverage.test.js`
|
|
434
|
-
if (require.main === module) {
|
|
435
|
-
run().then(function () {
|
|
436
|
-
console.log("OK — acme-coverage " + helpers.getChecks() + " checks passed");
|
|
437
|
-
}).catch(function (e) {
|
|
438
|
-
console.error(helpers.formatErr(e));
|
|
439
|
-
process.exit(1);
|
|
440
|
-
});
|
|
441
|
-
}
|