fastify 4.27.0 → 5.0.0-alpha.2
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/.markdownlint-cli2.yaml +1 -1
- package/.tap/processinfo/09002e93-10ad-430c-bc86-c0576928b0ed.json +241 -0
- package/.tap/processinfo/ee66c5ab-635d-48b5-8be6-3dc3ceea5bfc.json +268 -0
- package/.tap/test-results/test/404s.test.js.tap +623 -0
- package/.tap/test-results/test/500s.test.js.tap +64 -0
- package/.tap/test-results/test/allowUnsafeRegex.test.js.tap +36 -0
- package/.tap/test-results/test/als.test.js.tap +15 -0
- package/.tap/test-results/test/async-await.test.js.tap +184 -0
- package/.tap/test-results/test/async-dispose.test.js.tap +8 -0
- package/.tap/test-results/test/async_hooks.test.js.tap +10 -0
- package/.tap/test-results/test/bodyLimit.test.js.tap +48 -0
- package/.tap/test-results/test/buffer.test.js.tap +20 -0
- package/.tap/test-results/test/build/error-serializer.test.js.tap +12 -0
- package/.tap/test-results/test/build/version.test.js.tap +7 -0
- package/.tap/test-results/test/case-insensitive.test.js.tap +36 -0
- package/.tap/test-results/test/chainable.test.js.tap +17 -0
- package/.tap/test-results/test/check.test.js.tap +10 -0
- package/.tap/test-results/test/childLoggerFactory.test.js.tap +23 -0
- package/.tap/test-results/test/client-timeout.test.js.tap +7 -0
- package/.tap/test-results/test/close-pipelining.test.js.tap +15 -0
- package/.tap/test-results/test/close.test.js.tap +172 -0
- package/.tap/test-results/test/connectionTimeout.test.js.tap +12 -0
- package/.tap/test-results/test/constrained-routes.test.js.tap +173 -0
- package/.tap/test-results/test/content-length.test.js.tap +46 -0
- package/.tap/test-results/test/content-parser.test.js.tap +266 -0
- package/.tap/test-results/test/content-type.test.js.tap +14 -0
- package/.tap/test-results/test/context-config.test.js.tap +41 -0
- package/.tap/test-results/test/copy.test.js.tap +14 -0
- package/.tap/test-results/test/custom-http-server.test.js.tap +30 -0
- package/.tap/test-results/test/custom-parser-async.test.js.tap +21 -0
- package/.tap/test-results/test/custom-parser.0.test.js.tap +199 -0
- package/.tap/test-results/test/custom-parser.1.test.js.tap +90 -0
- package/.tap/test-results/test/custom-parser.2.test.js.tap +22 -0
- package/.tap/test-results/test/custom-parser.3.test.js.tap +53 -0
- package/.tap/test-results/test/custom-parser.4.test.js.tap +45 -0
- package/.tap/test-results/test/custom-parser.5.test.js.tap +41 -0
- package/.tap/test-results/test/custom-querystring-parser.test.js.tap +46 -0
- package/.tap/test-results/test/decorator.test.js.tap +465 -0
- package/.tap/test-results/test/delete.test.js.tap +110 -0
- package/.tap/test-results/test/diagnostics-channel/404.test.js.tap +15 -0
- package/.tap/test-results/test/diagnostics-channel/async-delay-request.test.js.tap +25 -0
- package/.tap/test-results/test/diagnostics-channel/async-request.test.js.tap +24 -0
- package/.tap/test-results/test/diagnostics-channel/error-before-handler.test.js.tap +9 -0
- package/.tap/test-results/test/diagnostics-channel/error-request.test.js.tap +20 -0
- package/.tap/test-results/test/diagnostics-channel/error-status.test.js.tap +10 -0
- package/.tap/test-results/test/diagnostics-channel/init.test.js.tap +14 -0
- package/.tap/test-results/test/diagnostics-channel/sync-delay-request.test.js.tap +16 -0
- package/.tap/test-results/test/diagnostics-channel/sync-request-reply.test.js.tap +16 -0
- package/.tap/test-results/test/diagnostics-channel/sync-request.test.js.tap +19 -0
- package/.tap/test-results/test/encapsulated-child-logger-factory.test.js.tap +18 -0
- package/.tap/test-results/test/encapsulated-error-handler.test.js.tap +243 -0
- package/.tap/test-results/test/esm/errorCodes.test.mjs.tap +9 -0
- package/.tap/test-results/test/esm/esm.test.mjs.tap +8 -0
- package/.tap/test-results/test/esm/index.test.js.tap +8 -0
- package/.tap/test-results/test/fastify-instance.test.js.tap +114 -0
- package/.tap/test-results/test/findRoute.test.js.tap +37 -0
- package/.tap/test-results/test/fluent-schema.test.js.tap +36 -0
- package/.tap/test-results/test/genReqId.test.js.tap +106 -0
- package/.tap/test-results/test/get.test.js.tap +151 -0
- package/.tap/test-results/test/handler-context.test.js.tap +19 -0
- package/.tap/test-results/test/has-route.test.js.tap +30 -0
- package/.tap/test-results/test/head.test.js.tap +130 -0
- package/.tap/test-results/test/header-overflow.test.js.tap +16 -0
- package/.tap/test-results/test/hooks-async.test.js.tap +286 -0
- package/.tap/test-results/test/hooks.on-listen.test.js.tap +311 -0
- package/.tap/test-results/test/hooks.on-ready.test.js.tap +151 -0
- package/.tap/test-results/test/hooks.test.js.tap +966 -0
- package/.tap/test-results/test/http2/closing.test.js.tap +35 -0
- package/.tap/test-results/test/http2/constraint.test.js.tap +32 -0
- package/.tap/test-results/test/http2/head.test.js.tap +9 -0
- package/.tap/test-results/test/http2/missing-http2-module.test.js.tap +8 -0
- package/.tap/test-results/test/http2/plain.test.js.tap +22 -0
- package/.tap/test-results/test/http2/secure-with-fallback.test.js.tap +40 -0
- package/.tap/test-results/test/http2/secure.test.js.tap +27 -0
- package/.tap/test-results/test/http2/unknown-http-method.test.js.tap +9 -0
- package/.tap/test-results/test/https/custom-https-server.test.js.tap +10 -0
- package/.tap/test-results/test/https/https.test.js.tap +45 -0
- package/.tap/test-results/test/imports.test.js.tap +14 -0
- package/.tap/test-results/test/inject.test.js.tap +165 -0
- package/.tap/test-results/test/internals/all.test.js.tap +42 -0
- package/.tap/test-results/test/internals/contentTypeParser.test.js.tap +14 -0
- package/.tap/test-results/test/internals/context.test.js.tap +14 -0
- package/.tap/test-results/test/internals/decorator.test.js.tap +51 -0
- package/.tap/test-results/test/internals/errors.test.js.tap +1212 -0
- package/.tap/test-results/test/internals/handleRequest.test.js.tap +69 -0
- package/.tap/test-results/test/internals/hookRunner.test.js.tap +143 -0
- package/.tap/test-results/test/internals/hooks.test.js.tap +45 -0
- package/.tap/test-results/test/internals/initialConfig.test.js.tap +125 -0
- package/.tap/test-results/test/internals/logger.test.js.tap +71 -0
- package/.tap/test-results/test/internals/plugin.test.js.tap +48 -0
- package/.tap/test-results/test/internals/reply-serialize.test.js.tap +166 -0
- package/.tap/test-results/test/internals/reply.test.js.tap +688 -0
- package/.tap/test-results/test/internals/reqIdGenFactory.test.js.tap +74 -0
- package/.tap/test-results/test/internals/request-validate.test.js.tap +384 -0
- package/.tap/test-results/test/internals/request.test.js.tap +163 -0
- package/.tap/test-results/test/internals/server.test.js.tap +30 -0
- package/.tap/test-results/test/internals/validation.test.js.tap +121 -0
- package/.tap/test-results/test/keepAliveTimeout.test.js.tap +12 -0
- package/.tap/test-results/test/listen.1.test.js.tap +31 -0
- package/.tap/test-results/test/listen.2.test.js.tap +46 -0
- package/.tap/test-results/test/listen.3.test.js.tap +25 -0
- package/.tap/test-results/test/listen.4.test.js.tap +51 -0
- package/.tap/test-results/test/lock.test.js.tap +29 -0
- package/.tap/test-results/test/logger/instantiation.test.js.tap +92 -0
- package/.tap/test-results/test/logger/logging.test.js.tap +117 -0
- package/.tap/test-results/test/logger/options.test.js.tap +165 -0
- package/.tap/test-results/test/logger/request.test.js.tap +82 -0
- package/.tap/test-results/test/logger/response.test.js.tap +38 -0
- package/.tap/test-results/test/maxRequestsPerSocket.test.js.tap +44 -0
- package/.tap/test-results/test/method-missing.test.js.tap +8 -0
- package/.tap/test-results/test/middleware.test.js.tap +17 -0
- package/.tap/test-results/test/mkcalendar.test.js.tap +43 -0
- package/.tap/test-results/test/mkcol.test.js.tap +14 -0
- package/.tap/test-results/test/move.test.js.tap +15 -0
- package/.tap/test-results/test/noop-set.test.js.tap +8 -0
- package/.tap/test-results/test/nullable-validation.test.js.tap +36 -0
- package/.tap/test-results/test/options.error-handler.test.js.tap +186 -0
- package/.tap/test-results/test/options.test.js.tap +174 -0
- package/.tap/test-results/test/output-validation.test.js.tap +66 -0
- package/.tap/test-results/test/patch.error-handler.test.js.tap +206 -0
- package/.tap/test-results/test/patch.test.js.tap +182 -0
- package/.tap/test-results/test/plugin.1.test.js.tap +78 -0
- package/.tap/test-results/test/plugin.2.test.js.tap +102 -0
- package/.tap/test-results/test/plugin.3.test.js.tap +58 -0
- package/.tap/test-results/test/plugin.4.test.js.tap +164 -0
- package/.tap/test-results/test/post-empty-body.test.js.tap +8 -0
- package/.tap/test-results/test/pretty-print.test.js.tap +82 -0
- package/.tap/test-results/test/promises.test.js.tap +46 -0
- package/.tap/test-results/test/propfind.test.js.tap +43 -0
- package/.tap/test-results/test/proppatch.test.js.tap +29 -0
- package/.tap/test-results/test/proto-poisoning.test.js.tap +47 -0
- package/.tap/test-results/test/put.error-handler.test.js.tap +206 -0
- package/.tap/test-results/test/put.test.js.tap +182 -0
- package/.tap/test-results/test/register.test.js.tap +61 -0
- package/.tap/test-results/test/reply-code.test.js.tap +40 -0
- package/.tap/test-results/test/reply-earlyHints.test.js.tap +22 -0
- package/.tap/test-results/test/reply-error.test.js.tap +643 -0
- package/.tap/test-results/test/reply-trailers.test.js.tap +176 -0
- package/.tap/test-results/test/report.test.js.tap +43 -0
- package/.tap/test-results/test/request-error.test.js.tap +98 -0
- package/.tap/test-results/test/request-id.test.js.tap +38 -0
- package/.tap/test-results/test/request.deprecated.test.js.tap +13 -0
- package/.tap/test-results/test/requestTimeout.test.js.tap +21 -0
- package/.tap/test-results/test/route-hooks.test.js.tap +498 -0
- package/.tap/test-results/test/route-prefix.test.js.tap +195 -0
- package/.tap/test-results/test/route-shorthand.test.js.tap +190 -0
- package/.tap/test-results/test/route.1.test.js.tap +93 -0
- package/.tap/test-results/test/route.2.test.js.tap +28 -0
- package/.tap/test-results/test/route.3.test.js.tap +39 -0
- package/.tap/test-results/test/route.4.test.js.tap +32 -0
- package/.tap/test-results/test/route.5.test.js.tap +54 -0
- package/.tap/test-results/test/route.6.test.js.tap +81 -0
- package/.tap/test-results/test/route.7.test.js.tap +93 -0
- package/.tap/test-results/test/route.8.test.js.tap +38 -0
- package/.tap/test-results/test/router-options.test.js.tap +104 -0
- package/.tap/test-results/test/same-shape.test.js.tap +22 -0
- package/.tap/test-results/test/schema-examples.test.js.tap +85 -0
- package/.tap/test-results/test/schema-feature.test.js.tap +445 -0
- package/.tap/test-results/test/schema-serialization.test.js.tap +194 -0
- package/.tap/test-results/test/schema-special-usage.test.js.tap +186 -0
- package/.tap/test-results/test/schema-validation.test.js.tap +199 -0
- package/.tap/test-results/test/search.test.js.tap +77 -0
- package/.tap/test-results/test/serialize-response.test.js.tap +26 -0
- package/.tap/test-results/test/server.test.js.tap +65 -0
- package/.tap/test-results/test/set-error-handler.test.js.tap +7 -0
- package/.tap/test-results/test/skip-reply-send.test.js.tap +272 -0
- package/.tap/test-results/test/stream.1.test.js.tap +36 -0
- package/.tap/test-results/test/stream.2.test.js.tap +20 -0
- package/.tap/test-results/test/stream.3.test.js.tap +34 -0
- package/.tap/test-results/test/stream.4.test.js.tap +40 -0
- package/.tap/test-results/test/stream.5.test.js.tap +37 -0
- package/.tap/test-results/test/sync-routes.test.js.tap +19 -0
- package/.tap/test-results/test/throw.test.js.tap +116 -0
- package/.tap/test-results/test/trace.test.js.tap +7 -0
- package/.tap/test-results/test/trust-proxy.test.js.tap +109 -0
- package/.tap/test-results/test/type-provider.test.js.tap +12 -0
- package/.tap/test-results/test/unlock.test.js.tap +14 -0
- package/.tap/test-results/test/upgrade.test.js.tap +8 -0
- package/.tap/test-results/test/url-rewriting.test.js.tap +39 -0
- package/.tap/test-results/test/useSemicolonDelimiter.test.js.tap +33 -0
- package/.tap/test-results/test/validation-error-handling.test.js.tap +180 -0
- package/.tap/test-results/test/versioned-routes.test.js.tap +151 -0
- package/.tap/test-results/test/web-api.test.js.tap +51 -0
- package/.tap/test-results/test/wrapThenable.test.js.tap +11 -0
- package/.taprc +4 -8
- package/README.md +3 -6
- package/build/build-error-serializer.js +4 -1
- package/build/build-validation.js +5 -4
- package/docs/Guides/Database.md +1 -1
- package/docs/Guides/Delay-Accepting-Requests.md +3 -3
- package/docs/Guides/Ecosystem.md +2 -0
- package/docs/Guides/Migration-Guide-V5.md +20 -0
- package/docs/Guides/Write-Type-Provider.md +4 -2
- package/docs/Reference/ContentTypeParser.md +30 -1
- package/docs/Reference/Decorators.md +42 -16
- package/docs/Reference/Errors.md +10 -2
- package/docs/Reference/Hooks.md +48 -14
- package/docs/Reference/Logging.md +5 -5
- package/docs/Reference/Reply.md +29 -24
- package/docs/Reference/Request.md +5 -1
- package/docs/Reference/Routes.md +24 -28
- package/docs/Reference/Server.md +14 -53
- package/docs/Reference/Type-Providers.md +21 -26
- package/docs/Reference/TypeScript.md +46 -29
- package/docs/Reference/Warnings.md +2 -8
- package/eslint.config.js +27 -0
- package/examples/typescript-server.ts +14 -14
- package/fastify.d.ts +15 -14
- package/fastify.js +41 -15
- package/lib/configValidator.js +94 -76
- package/lib/contentTypeParser.js +54 -88
- package/lib/decorate.js +3 -7
- package/lib/error-serializer.js +77 -19
- package/lib/errors.js +31 -6
- package/lib/handleRequest.js +70 -39
- package/lib/httpMethods.js +34 -18
- package/lib/logger.js +24 -6
- package/lib/pluginUtils.js +5 -5
- package/lib/reply.js +16 -13
- package/lib/request.js +37 -19
- package/lib/route.js +7 -31
- package/lib/server.js +62 -123
- package/lib/warnings.js +28 -27
- package/lib/wrapThenable.js +46 -22
- package/package.json +38 -58
- package/test/404s.test.js +8 -12
- package/test/async-await.test.js +46 -2
- package/test/build/error-serializer.test.js +4 -2
- package/test/check.test.js +225 -0
- package/test/close-pipelining.test.js +2 -34
- package/test/close.test.js +1 -41
- package/test/content-parser.test.js +69 -117
- package/test/custom-parser.1.test.js +40 -1
- package/test/decorator-namespace.test._js_ +31 -0
- package/test/decorator.test.js +92 -43
- package/test/delete.test.js +21 -1
- package/test/diagnostics-channel/404.test.js +57 -0
- package/test/diagnostics-channel/async-delay-request.test.js +74 -0
- package/test/diagnostics-channel/async-request.test.js +72 -0
- package/test/diagnostics-channel/error-before-handler.test.js +36 -0
- package/test/diagnostics-channel/error-request.test.js +61 -0
- package/test/diagnostics-channel/error-status.test.js +39 -0
- package/test/{diagnostics-channel.test.js → diagnostics-channel/init.test.js} +6 -16
- package/test/diagnostics-channel/sync-delay-request.test.js +58 -0
- package/test/diagnostics-channel/sync-request-reply.test.js +58 -0
- package/test/diagnostics-channel/sync-request.test.js +61 -0
- package/test/encapsulated-error-handler.test.js +201 -14
- package/test/esm/index.test.js +2 -12
- package/test/findRoute.test.js +16 -0
- package/test/genReqId.test.js +9 -0
- package/test/get.test.js +28 -0
- package/test/has-route.test.js +18 -2
- package/test/helper.js +1 -5
- package/test/hooks.test.js +0 -4
- package/test/http2/constraint.test.js +22 -1
- package/test/http2/plain.test.js +21 -6
- package/test/http2/secure.test.js +12 -1
- package/test/https/https.test.js +57 -0
- package/test/inject.test.js +1 -2
- package/test/internals/decorator.test.js +0 -2
- package/test/internals/errors.test.js +57 -17
- package/test/internals/handleRequest.test.js +5 -1
- package/test/internals/initialConfig.test.js +5 -5
- package/test/internals/logger.test.js +31 -2
- package/test/internals/reply.test.js +38 -80
- package/test/internals/request.test.js +13 -11
- package/test/listen.1.test.js +5 -15
- package/test/listen.5.test.js +88 -0
- package/test/logger/instantiation.test.js +8 -8
- package/test/logger/logging.test.js +4 -4
- package/test/logger/options.test.js +102 -21
- package/test/logger/response.test.js +6 -6
- package/test/maxRequestsPerSocket.test.js +2 -5
- package/test/method-missing.test.js +24 -0
- package/test/plugin.1.test.js +2 -4
- package/test/plugin.2.test.js +0 -2
- package/test/plugin.3.test.js +0 -2
- package/test/plugin.4.test.js +92 -56
- package/test/register.test.js +2 -4
- package/test/reply-earlyHints.test.js +98 -0
- package/test/reply-error.test.js +0 -2
- package/test/route-hooks.test.js +0 -1
- package/test/route-shorthand.test.js +60 -0
- package/test/schema-special-usage.test.js +1 -1
- package/test/server.test.js +17 -2
- package/test/stream.2.test.js +1 -1
- package/test/stream.4.test.js +0 -42
- package/test/stream.5.test.js +2 -2
- package/test/trust-proxy.test.js +33 -27
- package/test/types/errors.test-d.ts +0 -2
- package/test/types/fastify.test-d.ts +14 -12
- package/test/types/hooks.test-d.ts +1 -0
- package/test/types/import.ts +1 -0
- package/test/types/instance.test-d.ts +10 -51
- package/test/types/logger.test-d.ts +43 -6
- package/test/types/plugin.test-d.ts +5 -2
- package/test/types/register.test-d.ts +2 -2
- package/test/types/reply.test-d.ts +13 -12
- package/test/types/request.test-d.ts +19 -8
- package/test/types/route.test-d.ts +30 -2
- package/test/types/schema.test-d.ts +2 -2
- package/test/types/serverFactory.test-d.ts +1 -1
- package/test/types/type-provider.test-d.ts +60 -13
- package/test/types/using.test-d.ts +4 -1
- package/test/url-rewriting.test.js +3 -2
- package/test/useSemicolonDelimiter.test.js +3 -6
- package/test/versioned-routes.test.js +1 -1
- package/test/web-api.test.js +0 -6
- package/types/content-type-parser.d.ts +3 -3
- package/types/context.d.ts +0 -1
- package/types/errors.d.ts +1 -0
- package/types/hooks.d.ts +6 -6
- package/types/instance.d.ts +28 -41
- package/types/logger.d.ts +3 -3
- package/types/plugin.d.ts +3 -3
- package/types/reply.d.ts +13 -14
- package/types/request.d.ts +5 -3
- package/types/route.d.ts +29 -29
- package/types/schema.d.ts +3 -3
- package/types/serverFactory.d.ts +2 -2
- package/types/type-provider.d.ts +22 -12
- package/types/utils.d.ts +18 -18
- package/.c8rc.json +0 -8
- package/.eslintrc +0 -4
- package/test/default-route.test.js +0 -88
- package/test/listen.deprecated.test.js +0 -229
- package/test/unsupported-httpversion.test.js +0 -31
- package/types/.eslintrc.json +0 -48
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
TAP version 14
|
|
2
|
+
# Subtest: should create incremental ids deterministically
|
|
3
|
+
1..1
|
|
4
|
+
ok 1 - (unnamed test)
|
|
5
|
+
ok 1 - should create incremental ids deterministically # time=9.41ms
|
|
6
|
+
|
|
7
|
+
# Subtest: should have prefix "req-"
|
|
8
|
+
1..1
|
|
9
|
+
ok 1 - should be equal
|
|
10
|
+
ok 2 - should have prefix "req-" # time=0.67ms
|
|
11
|
+
|
|
12
|
+
# Subtest: different id generator functions should have separate internal counters
|
|
13
|
+
1..5
|
|
14
|
+
ok 1 - should be equal
|
|
15
|
+
ok 2 - should be equal
|
|
16
|
+
ok 3 - should be equal
|
|
17
|
+
ok 4 - should be equal
|
|
18
|
+
ok 5 - should be equal
|
|
19
|
+
ok 3 - different id generator functions should have separate internal counters # time=0.607ms
|
|
20
|
+
|
|
21
|
+
# Subtest: should start counting with 1
|
|
22
|
+
1..1
|
|
23
|
+
ok 1 - should be equal
|
|
24
|
+
ok 4 - should start counting with 1 # time=0.23ms
|
|
25
|
+
|
|
26
|
+
# Subtest: should handle requestIdHeader and return provided id in header
|
|
27
|
+
1..1
|
|
28
|
+
ok 1 - should be equal
|
|
29
|
+
ok 5 - should handle requestIdHeader and return provided id in header # time=0.251ms
|
|
30
|
+
|
|
31
|
+
# Subtest: should handle requestIdHeader and fallback if id is not provided in header
|
|
32
|
+
1..1
|
|
33
|
+
ok 1 - should be equal
|
|
34
|
+
ok 6 - should handle requestIdHeader and fallback if id is not provided in header # time=0.685ms
|
|
35
|
+
|
|
36
|
+
# Subtest: should handle requestIdHeader and increment internal counter if no header was provided
|
|
37
|
+
1..4
|
|
38
|
+
ok 1 - should be equal
|
|
39
|
+
ok 2 - should be equal
|
|
40
|
+
ok 3 - should be equal
|
|
41
|
+
ok 4 - should be equal
|
|
42
|
+
ok 7 - should handle requestIdHeader and increment internal counter if no header was provided # time=0.353ms
|
|
43
|
+
|
|
44
|
+
# Subtest: should use optGenReqId to generate ids
|
|
45
|
+
1..4
|
|
46
|
+
ok 1 - should be equal
|
|
47
|
+
ok 2 - should be equal
|
|
48
|
+
ok 3 - should be equal
|
|
49
|
+
ok 4 - should be equal
|
|
50
|
+
ok 8 - should use optGenReqId to generate ids # time=0.323ms
|
|
51
|
+
|
|
52
|
+
# Subtest: should use optGenReqId to generate ids if requestIdHeader is used but not provided
|
|
53
|
+
1..4
|
|
54
|
+
ok 1 - should be equal
|
|
55
|
+
ok 2 - should be equal
|
|
56
|
+
ok 3 - should be equal
|
|
57
|
+
ok 4 - should be equal
|
|
58
|
+
ok 9 - should use optGenReqId to generate ids if requestIdHeader is used but not provided # time=6.708ms
|
|
59
|
+
|
|
60
|
+
# Subtest: should not use optGenReqId to generate ids if requestIdHeader is used and provided
|
|
61
|
+
1..2
|
|
62
|
+
ok 1 - should be equal
|
|
63
|
+
ok 2 - should be equal
|
|
64
|
+
ok 10 - should not use optGenReqId to generate ids if requestIdHeader is used and provided # time=0.293ms
|
|
65
|
+
|
|
66
|
+
# Subtest: should fallback to use optGenReqId to generate ids if requestIdHeader is sometimes provided
|
|
67
|
+
1..4
|
|
68
|
+
ok 1 - should be equal
|
|
69
|
+
ok 2 - should be equal
|
|
70
|
+
ok 3 - should be equal
|
|
71
|
+
ok 4 - should be equal
|
|
72
|
+
ok 11 - should fallback to use optGenReqId to generate ids if requestIdHeader is sometimes provided # time=0.324ms
|
|
73
|
+
|
|
74
|
+
1..11
|
|
@@ -0,0 +1,384 @@
|
|
|
1
|
+
TAP version 14
|
|
2
|
+
# Subtest: \#compileValidationSchema
|
|
3
|
+
1..7
|
|
4
|
+
# Subtest: Should return a function - Route without schema
|
|
5
|
+
1..3
|
|
6
|
+
ok 1 - type is Function
|
|
7
|
+
ok 2 - should be equal
|
|
8
|
+
ok 3 - should be equal
|
|
9
|
+
ok 1 - Should return a function - Route without schema # time=41.136ms
|
|
10
|
+
|
|
11
|
+
# Subtest: Validate function errors property should be null after validation when input is valid
|
|
12
|
+
1..3
|
|
13
|
+
ok 1 - should be equal
|
|
14
|
+
ok 2 - should be equal
|
|
15
|
+
ok 3 - should be equal
|
|
16
|
+
ok 2 - Validate function errors property should be null after validation when input is valid # time=9.933ms
|
|
17
|
+
|
|
18
|
+
# Subtest: Validate function errors property should be an array of errors after validation when input is valid
|
|
19
|
+
1..4
|
|
20
|
+
ok 1 - should be equal
|
|
21
|
+
ok 2 - should be equal
|
|
22
|
+
ok 3 - should be equal
|
|
23
|
+
ok 4 - should be equal
|
|
24
|
+
ok 3 - Validate function errors property should be an array of errors after validation when input is valid # time=29.349ms
|
|
25
|
+
|
|
26
|
+
# Subtest: Should reuse the validate fn across multiple invocations - Route without schema
|
|
27
|
+
1..16
|
|
28
|
+
ok 1 - type is Function
|
|
29
|
+
ok 2 - should be equal
|
|
30
|
+
ok 3 - should be equal
|
|
31
|
+
ok 4 - Are the same validate function
|
|
32
|
+
ok 5 - type is Function
|
|
33
|
+
ok 6 - should be equal
|
|
34
|
+
ok 7 - should be equal
|
|
35
|
+
ok 8 - Are the same validate function
|
|
36
|
+
ok 9 - type is Function
|
|
37
|
+
ok 10 - should be equal
|
|
38
|
+
ok 11 - should be equal
|
|
39
|
+
ok 12 - Are the same validate function
|
|
40
|
+
ok 13 - type is Function
|
|
41
|
+
ok 14 - should be equal
|
|
42
|
+
ok 15 - should be equal
|
|
43
|
+
ok 16 - should be equal
|
|
44
|
+
ok 4 - Should reuse the validate fn across multiple invocations - Route without schema # time=15.675ms
|
|
45
|
+
|
|
46
|
+
# Subtest: Should return a function - Route with schema
|
|
47
|
+
1..3
|
|
48
|
+
ok 1 - type is Function
|
|
49
|
+
ok 2 - should be equal
|
|
50
|
+
ok 3 - should be equal
|
|
51
|
+
ok 5 - Should return a function - Route with schema # time=17.215ms
|
|
52
|
+
|
|
53
|
+
# Subtest: Should use the custom validator compiler for the route
|
|
54
|
+
1..10
|
|
55
|
+
ok 1 - should be equal
|
|
56
|
+
ok 2 - should be equal
|
|
57
|
+
ok 3 - should be equal
|
|
58
|
+
ok 4 - should be equal
|
|
59
|
+
ok 5 - should be equal
|
|
60
|
+
ok 6 - should be equivalent
|
|
61
|
+
ok 7 - should be equal
|
|
62
|
+
ok 8 - should be equivalent
|
|
63
|
+
ok 9 - should be equal
|
|
64
|
+
ok 10 - should be equal
|
|
65
|
+
ok 6 - Should use the custom validator compiler for the route # time=2.806ms
|
|
66
|
+
|
|
67
|
+
# Subtest: Should instantiate a WeakMap when executed for first time
|
|
68
|
+
1..5
|
|
69
|
+
ok 1 - should be equal
|
|
70
|
+
ok 2 - type is Function
|
|
71
|
+
ok 3 - type is WeakMap
|
|
72
|
+
ok 4 - type is Function
|
|
73
|
+
ok 5 - type is WeakMap
|
|
74
|
+
ok 7 - Should instantiate a WeakMap when executed for first time # time=7.26ms
|
|
75
|
+
|
|
76
|
+
ok 1 - \#compileValidationSchema # time=131.788ms
|
|
77
|
+
|
|
78
|
+
# Subtest: \#getValidationFunction
|
|
79
|
+
1..6
|
|
80
|
+
# Subtest: Should return a validation function
|
|
81
|
+
1..1
|
|
82
|
+
ok 1 - should be equal
|
|
83
|
+
ok 1 - Should return a validation function # time=11.956ms
|
|
84
|
+
|
|
85
|
+
# Subtest: Validate function errors property should be null after validation when input is valid
|
|
86
|
+
1..3
|
|
87
|
+
ok 1 - should be equal
|
|
88
|
+
ok 2 - should be equal
|
|
89
|
+
ok 3 - should be equal
|
|
90
|
+
ok 2 - Validate function errors property should be null after validation when input is valid # time=6.218ms
|
|
91
|
+
|
|
92
|
+
# Subtest: Validate function errors property should be an array of errors after validation when input is valid
|
|
93
|
+
1..4
|
|
94
|
+
ok 1 - should be equal
|
|
95
|
+
ok 2 - should be equal
|
|
96
|
+
ok 3 - should be equal
|
|
97
|
+
ok 4 - should be equal
|
|
98
|
+
ok 3 - Validate function errors property should be an array of errors after validation when input is valid # time=5.93ms
|
|
99
|
+
|
|
100
|
+
# Subtest: Should return undefined if no schema compiled
|
|
101
|
+
1..2
|
|
102
|
+
ok 1 - should be equal
|
|
103
|
+
ok 2 - should be equal
|
|
104
|
+
ok 4 - Should return undefined if no schema compiled # time=1.474ms
|
|
105
|
+
|
|
106
|
+
# Subtest: Should return the validation function from each HTTP part
|
|
107
|
+
1..15
|
|
108
|
+
ok 1 - should be equal
|
|
109
|
+
ok 2 - should be equal
|
|
110
|
+
ok 3 - should be equal
|
|
111
|
+
ok 4 - should be equal
|
|
112
|
+
ok 5 - should be equal
|
|
113
|
+
ok 6 - should be equal
|
|
114
|
+
ok 7 - should be equal
|
|
115
|
+
ok 8 - should be equal
|
|
116
|
+
ok 9 - should be equal
|
|
117
|
+
ok 10 - should be equal
|
|
118
|
+
ok 11 - should be equal
|
|
119
|
+
ok 12 - should be equal
|
|
120
|
+
ok 13 - should be equal
|
|
121
|
+
ok 14 - should be equal
|
|
122
|
+
ok 15 - should be equal
|
|
123
|
+
ok 5 - Should return the validation function from each HTTP part # time=20.381ms
|
|
124
|
+
|
|
125
|
+
# Subtest: Should not set a WeakMap if there is no schema
|
|
126
|
+
1..1
|
|
127
|
+
ok 1 - should be equal
|
|
128
|
+
ok 6 - Should not set a WeakMap if there is no schema # time=1.323ms
|
|
129
|
+
|
|
130
|
+
ok 2 - \#getValidationFunction # time=61.742ms
|
|
131
|
+
|
|
132
|
+
# Subtest: \#validate
|
|
133
|
+
1..7
|
|
134
|
+
# Subtest: Should return true/false if input valid - Route without schema
|
|
135
|
+
1..2
|
|
136
|
+
ok 1 - should be equal
|
|
137
|
+
ok 2 - should be equal
|
|
138
|
+
ok 1 - Should return true/false if input valid - Route without schema # time=7.759ms
|
|
139
|
+
|
|
140
|
+
# Subtest: Should use the custom validator compiler for the route
|
|
141
|
+
1..9
|
|
142
|
+
ok 1 - should be equal
|
|
143
|
+
ok 2 - should be equal
|
|
144
|
+
ok 3 - should be equal
|
|
145
|
+
ok 4 - should be equal
|
|
146
|
+
ok 5 - should be equivalent
|
|
147
|
+
ok 6 - should be equivalent
|
|
148
|
+
ok 7 - should be equal
|
|
149
|
+
ok 8 - should be equal
|
|
150
|
+
ok 9 - should be equal
|
|
151
|
+
ok 2 - Should use the custom validator compiler for the route # time=5.558ms
|
|
152
|
+
|
|
153
|
+
# Subtest: Should return true/false if input valid - With Schema for Route defined
|
|
154
|
+
1..8
|
|
155
|
+
ok 1 - should be equal
|
|
156
|
+
ok 2 - should be equal
|
|
157
|
+
ok 3 - should be equal
|
|
158
|
+
ok 4 - should be equal
|
|
159
|
+
ok 5 - should be equal
|
|
160
|
+
ok 6 - should be equal
|
|
161
|
+
ok 7 - should be equal
|
|
162
|
+
ok 8 - should be equal
|
|
163
|
+
ok 3 - Should return true/false if input valid - With Schema for Route defined # time=13.571ms
|
|
164
|
+
|
|
165
|
+
# Subtest: Should throw if missing validation fn for HTTP part and not schema provided
|
|
166
|
+
1..10
|
|
167
|
+
ok 1 - should be equal
|
|
168
|
+
ok 2 - should be equal
|
|
169
|
+
ok 3 - should be equal
|
|
170
|
+
ok 4 - should be equal
|
|
171
|
+
ok 5 - should be equal
|
|
172
|
+
ok 6 - should be equal
|
|
173
|
+
ok 7 - should be equal
|
|
174
|
+
ok 8 - should be equal
|
|
175
|
+
ok 9 - should be equal
|
|
176
|
+
ok 10 - should be equal
|
|
177
|
+
ok 4 - Should throw if missing validation fn for HTTP part and not schema provided # time=3.108ms
|
|
178
|
+
|
|
179
|
+
# Subtest: Should throw if missing validation fn for HTTP part and not valid schema provided
|
|
180
|
+
1..10
|
|
181
|
+
ok 1 - should be equal
|
|
182
|
+
ok 2 - should be equal
|
|
183
|
+
ok 3 - should be equal
|
|
184
|
+
ok 4 - should be equal
|
|
185
|
+
ok 5 - should be equal
|
|
186
|
+
ok 6 - should be equal
|
|
187
|
+
ok 7 - should be equal
|
|
188
|
+
ok 8 - should be equal
|
|
189
|
+
ok 9 - should be equal
|
|
190
|
+
ok 10 - should be equal
|
|
191
|
+
ok 5 - Should throw if missing validation fn for HTTP part and not valid schema provided # time=2.711ms
|
|
192
|
+
|
|
193
|
+
# Subtest: Should throw if invalid schema passed
|
|
194
|
+
1..10
|
|
195
|
+
ok 1 - should be equal
|
|
196
|
+
ok 2 - should be equal
|
|
197
|
+
ok 3 - should be equal
|
|
198
|
+
ok 4 - should be equal
|
|
199
|
+
ok 5 - should be equal
|
|
200
|
+
ok 6 - should be equal
|
|
201
|
+
ok 7 - should be equal
|
|
202
|
+
ok 8 - should be equal
|
|
203
|
+
ok 9 - should be equal
|
|
204
|
+
ok 10 - should be equal
|
|
205
|
+
ok 6 - Should throw if invalid schema passed # time=2.029ms
|
|
206
|
+
|
|
207
|
+
# Subtest: Should set a WeakMap if compiling the very first schema
|
|
208
|
+
1..3
|
|
209
|
+
ok 1 - should be equal
|
|
210
|
+
ok 2 - should be equal
|
|
211
|
+
ok 3 - type is WeakMap
|
|
212
|
+
ok 7 - Should set a WeakMap if compiling the very first schema # time=5.915ms
|
|
213
|
+
|
|
214
|
+
ok 3 - \#validate # time=43.838ms
|
|
215
|
+
|
|
216
|
+
# Subtest: Nested Context
|
|
217
|
+
1..1
|
|
218
|
+
# Subtest: Level_1
|
|
219
|
+
1..3
|
|
220
|
+
# Subtest: \#compileValidationSchema
|
|
221
|
+
1..5
|
|
222
|
+
# Subtest: Should return a function - Route without schema
|
|
223
|
+
1..3
|
|
224
|
+
ok 1 - type is Function
|
|
225
|
+
ok 2 - should be equal
|
|
226
|
+
ok 3 - should be equal
|
|
227
|
+
ok 1 - Should return a function - Route without schema # time=19.871ms
|
|
228
|
+
|
|
229
|
+
# Subtest: Should reuse the validate fn across multiple invocations - Route without schema
|
|
230
|
+
1..16
|
|
231
|
+
ok 1 - type is Function
|
|
232
|
+
ok 2 - should be equal
|
|
233
|
+
ok 3 - should be equal
|
|
234
|
+
ok 4 - Are the same validate function
|
|
235
|
+
ok 5 - type is Function
|
|
236
|
+
ok 6 - should be equal
|
|
237
|
+
ok 7 - should be equal
|
|
238
|
+
ok 8 - Are the same validate function
|
|
239
|
+
ok 9 - type is Function
|
|
240
|
+
ok 10 - should be equal
|
|
241
|
+
ok 11 - should be equal
|
|
242
|
+
ok 12 - Are the same validate function
|
|
243
|
+
ok 13 - type is Function
|
|
244
|
+
ok 14 - should be equal
|
|
245
|
+
ok 15 - should be equal
|
|
246
|
+
ok 16 - should be equal
|
|
247
|
+
ok 2 - Should reuse the validate fn across multiple invocations - Route without schema # time=12.268ms
|
|
248
|
+
|
|
249
|
+
# Subtest: Should return a function - Route with schema
|
|
250
|
+
1..3
|
|
251
|
+
ok 1 - type is Function
|
|
252
|
+
ok 2 - should be equal
|
|
253
|
+
ok 3 - should be equal
|
|
254
|
+
ok 3 - Should return a function - Route with schema # time=6.664ms
|
|
255
|
+
|
|
256
|
+
# Subtest: Should use the custom validator compiler for the route
|
|
257
|
+
1..10
|
|
258
|
+
ok 1 - should be equal
|
|
259
|
+
ok 2 - should be equal
|
|
260
|
+
ok 3 - should be equal
|
|
261
|
+
ok 4 - should be equal
|
|
262
|
+
ok 5 - should be equal
|
|
263
|
+
ok 6 - should be equivalent
|
|
264
|
+
ok 7 - should be equal
|
|
265
|
+
ok 8 - should be equivalent
|
|
266
|
+
ok 9 - should be equal
|
|
267
|
+
ok 10 - should be equal
|
|
268
|
+
ok 4 - Should use the custom validator compiler for the route # time=2.558ms
|
|
269
|
+
|
|
270
|
+
# Subtest: Should compile the custom validation - nested with schema.headers
|
|
271
|
+
1..4
|
|
272
|
+
ok 1 - should be equal
|
|
273
|
+
ok 2 - should be equal
|
|
274
|
+
ok 3 - should be equal
|
|
275
|
+
ok 4 - should be equal
|
|
276
|
+
ok 5 - Should compile the custom validation - nested with schema.headers # time=1.96ms
|
|
277
|
+
|
|
278
|
+
ok 1 - \#compileValidationSchema # time=49.167ms
|
|
279
|
+
|
|
280
|
+
# Subtest: \#getValidationFunction
|
|
281
|
+
1..6
|
|
282
|
+
# Subtest: Should return a validation function
|
|
283
|
+
1..1
|
|
284
|
+
ok 1 - should be equal
|
|
285
|
+
ok 1 - Should return a validation function # time=10.419ms
|
|
286
|
+
|
|
287
|
+
# Subtest: Should return undefined if no schema compiled
|
|
288
|
+
1..1
|
|
289
|
+
ok 1 - should be equal
|
|
290
|
+
ok 2 - Should return undefined if no schema compiled # time=1.67ms
|
|
291
|
+
|
|
292
|
+
# Subtest: Should return the validation function from each HTTP part
|
|
293
|
+
1..15
|
|
294
|
+
ok 1 - should be equal
|
|
295
|
+
ok 2 - should be equal
|
|
296
|
+
ok 3 - should be equal
|
|
297
|
+
ok 4 - should be equal
|
|
298
|
+
ok 5 - should be equal
|
|
299
|
+
ok 6 - should be equal
|
|
300
|
+
ok 7 - should be equal
|
|
301
|
+
ok 8 - should be equal
|
|
302
|
+
ok 9 - should be equal
|
|
303
|
+
ok 10 - should be equal
|
|
304
|
+
ok 11 - should be equal
|
|
305
|
+
ok 12 - should be equal
|
|
306
|
+
ok 13 - should be equal
|
|
307
|
+
ok 14 - should be equal
|
|
308
|
+
ok 15 - should be equal
|
|
309
|
+
ok 3 - Should return the validation function from each HTTP part # time=8.655ms
|
|
310
|
+
|
|
311
|
+
# Subtest: Should return a validation function - nested
|
|
312
|
+
1..6
|
|
313
|
+
ok 1 - should be equal
|
|
314
|
+
ok 2 - should be equal
|
|
315
|
+
ok 3 - should be equal
|
|
316
|
+
ok 4 - should be equal
|
|
317
|
+
ok 5 - should be equal
|
|
318
|
+
ok 6 - should be equal
|
|
319
|
+
ok 4 - Should return a validation function - nested # time=1.757ms
|
|
320
|
+
|
|
321
|
+
# Subtest: Should return undefined if no schema compiled - nested
|
|
322
|
+
1..3
|
|
323
|
+
ok 1 - should be equal
|
|
324
|
+
ok 2 - should be equal
|
|
325
|
+
ok 3 - should be equal
|
|
326
|
+
ok 5 - Should return undefined if no schema compiled - nested # time=6.547ms
|
|
327
|
+
|
|
328
|
+
# Subtest: Should per-route defined validation compiler
|
|
329
|
+
1..5
|
|
330
|
+
ok 1 - should be equal
|
|
331
|
+
ok 2 - should be equal
|
|
332
|
+
ok 3 - should not be equal
|
|
333
|
+
ok 4 - should be equal
|
|
334
|
+
ok 5 - should be equal
|
|
335
|
+
ok 6 - Should per-route defined validation compiler # time=2.26ms
|
|
336
|
+
|
|
337
|
+
ok 2 - \#getValidationFunction # time=33.624ms
|
|
338
|
+
|
|
339
|
+
# Subtest: \#validate
|
|
340
|
+
1..3
|
|
341
|
+
# Subtest: Should return true/false if input valid - Route without schema
|
|
342
|
+
1..2
|
|
343
|
+
ok 1 - should be equal
|
|
344
|
+
ok 2 - should be equal
|
|
345
|
+
ok 1 - Should return true/false if input valid - Route without schema # time=10.732ms
|
|
346
|
+
|
|
347
|
+
# Subtest: Should use the custom validator compiler for the route
|
|
348
|
+
1..10
|
|
349
|
+
ok 1 - should be equal
|
|
350
|
+
ok 2 - should be equal
|
|
351
|
+
ok 3 - should be equal
|
|
352
|
+
ok 4 - should be equal
|
|
353
|
+
ok 5 - should be equivalent
|
|
354
|
+
ok 6 - should be equivalent
|
|
355
|
+
ok 7 - should be equal
|
|
356
|
+
ok 8 - should be equal
|
|
357
|
+
ok 9 - should be equal
|
|
358
|
+
ok 10 - should be equal
|
|
359
|
+
ok 2 - Should use the custom validator compiler for the route # time=2.186ms
|
|
360
|
+
|
|
361
|
+
# Subtest: Should return true/false if input valid - With Schema for Route defined and scoped validator compiler
|
|
362
|
+
1..13
|
|
363
|
+
ok 1 - should be equal
|
|
364
|
+
ok 2 - should be equal
|
|
365
|
+
ok 3 - should be equal
|
|
366
|
+
ok 4 - should be equal
|
|
367
|
+
ok 5 - should be equal
|
|
368
|
+
ok 6 - should be equal
|
|
369
|
+
ok 7 - should be equal
|
|
370
|
+
ok 8 - should be equal
|
|
371
|
+
ok 9 - should be equal
|
|
372
|
+
ok 10 - should be equal
|
|
373
|
+
ok 11 - should be equal
|
|
374
|
+
ok 12 - should be equal
|
|
375
|
+
ok 13 - should be equal
|
|
376
|
+
ok 3 - Should return true/false if input valid - With Schema for Route defined and scoped validator compiler # time=24.968ms
|
|
377
|
+
|
|
378
|
+
ok 3 - \#validate # time=39.25ms
|
|
379
|
+
|
|
380
|
+
ok 1 - Level_1 # time=123.338ms
|
|
381
|
+
|
|
382
|
+
ok 4 - Nested Context # time=124.264ms
|
|
383
|
+
|
|
384
|
+
1..4
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
TAP version 14
|
|
2
|
+
# Subtest: Regular request
|
|
3
|
+
ok 1 - type is Request
|
|
4
|
+
ok 2 - type is Function
|
|
5
|
+
ok 3 - type is Function
|
|
6
|
+
ok 4 - type is Function
|
|
7
|
+
ok 5 - should be equal
|
|
8
|
+
ok 6 - should be equal
|
|
9
|
+
ok 7 - should be equal
|
|
10
|
+
ok 8 - should be equal
|
|
11
|
+
ok 9 - should be equal
|
|
12
|
+
ok 10 - should be equal
|
|
13
|
+
ok 11 - should be equal
|
|
14
|
+
ok 12 - should be equal
|
|
15
|
+
ok 13 - should be equal
|
|
16
|
+
ok 14 - should be equal
|
|
17
|
+
ok 15 - should be equal
|
|
18
|
+
ok 16 - should be equal
|
|
19
|
+
ok 17 - should be equal
|
|
20
|
+
ok 18 - should be equal
|
|
21
|
+
ok 19 - should be equal
|
|
22
|
+
ok 20 - should be equal
|
|
23
|
+
ok 21 - should be equal
|
|
24
|
+
ok 22 - should be equal
|
|
25
|
+
ok 23 - should be equal
|
|
26
|
+
ok 24 - should be equal
|
|
27
|
+
ok 25 - should be equal
|
|
28
|
+
1..25
|
|
29
|
+
ok 1 - Regular request # time=3.417ms
|
|
30
|
+
|
|
31
|
+
# Subtest: Request with undefined config
|
|
32
|
+
ok 1 - type is Request
|
|
33
|
+
ok 2 - type is Function
|
|
34
|
+
ok 3 - type is Function
|
|
35
|
+
ok 4 - type is Function
|
|
36
|
+
ok 5 - should be equal
|
|
37
|
+
ok 6 - should be equal
|
|
38
|
+
ok 7 - should be equal
|
|
39
|
+
ok 8 - should be equal
|
|
40
|
+
ok 9 - should be equal
|
|
41
|
+
ok 10 - should be equal
|
|
42
|
+
ok 11 - should be equal
|
|
43
|
+
ok 12 - should be equal
|
|
44
|
+
ok 13 - should be equal
|
|
45
|
+
ok 14 - should be equal
|
|
46
|
+
ok 15 - should be equal
|
|
47
|
+
ok 16 - should be equal
|
|
48
|
+
ok 17 - should be equal
|
|
49
|
+
ok 18 - should be equal
|
|
50
|
+
ok 19 - should be equal
|
|
51
|
+
ok 20 - should be equal
|
|
52
|
+
ok 21 - should be equal
|
|
53
|
+
ok 22 - should be equal
|
|
54
|
+
ok 23 - should be equal
|
|
55
|
+
ok 24 - should be equal
|
|
56
|
+
ok 25 - should be equal
|
|
57
|
+
1..25
|
|
58
|
+
ok 2 - Request with undefined config # time=1.418ms
|
|
59
|
+
|
|
60
|
+
# Subtest: Regular request - hostname from authority
|
|
61
|
+
1..3
|
|
62
|
+
ok 1 - type is Request
|
|
63
|
+
ok 2 - should be equal
|
|
64
|
+
ok 3 - should be equal
|
|
65
|
+
ok 3 - Regular request - hostname from authority # time=2.296ms
|
|
66
|
+
|
|
67
|
+
# Subtest: Regular request - host header has precedence over authority
|
|
68
|
+
1..3
|
|
69
|
+
ok 1 - type is Request
|
|
70
|
+
ok 2 - should be equal
|
|
71
|
+
ok 3 - should be equal
|
|
72
|
+
ok 4 - Regular request - host header has precedence over authority # time=0.315ms
|
|
73
|
+
|
|
74
|
+
# Subtest: Request with trust proxy
|
|
75
|
+
1..22
|
|
76
|
+
ok 1 - type is _Request
|
|
77
|
+
ok 2 - should be equal
|
|
78
|
+
ok 3 - should be equal
|
|
79
|
+
ok 4 - should be equivalent
|
|
80
|
+
ok 5 - should be equal
|
|
81
|
+
ok 6 - should be equal
|
|
82
|
+
ok 7 - should be equal
|
|
83
|
+
ok 8 - should be equal
|
|
84
|
+
ok 9 - should be equivalent
|
|
85
|
+
ok 10 - should be equal
|
|
86
|
+
ok 11 - should be equal
|
|
87
|
+
ok 12 - should be equal
|
|
88
|
+
ok 13 - should be equal
|
|
89
|
+
ok 14 - should be equal
|
|
90
|
+
ok 15 - should be equal
|
|
91
|
+
ok 16 - type is Function
|
|
92
|
+
ok 17 - type is Function
|
|
93
|
+
ok 18 - type is Function
|
|
94
|
+
ok 19 - should be equal
|
|
95
|
+
ok 20 - should be equal
|
|
96
|
+
ok 21 - should be equal
|
|
97
|
+
ok 22 - should be equal
|
|
98
|
+
ok 5 - Request with trust proxy # time=1.936ms
|
|
99
|
+
|
|
100
|
+
# Subtest: Request with trust proxy, encrypted
|
|
101
|
+
1..2
|
|
102
|
+
ok 1 - type is _Request
|
|
103
|
+
ok 2 - should be equal
|
|
104
|
+
ok 6 - Request with trust proxy, encrypted # time=0.55ms
|
|
105
|
+
|
|
106
|
+
# Subtest: Request with trust proxy - no x-forwarded-host header
|
|
107
|
+
1..2
|
|
108
|
+
ok 1 - type is _Request
|
|
109
|
+
ok 2 - should be equal
|
|
110
|
+
ok 7 - Request with trust proxy - no x-forwarded-host header # time=0.468ms
|
|
111
|
+
|
|
112
|
+
# Subtest: Request with trust proxy - no x-forwarded-host header and fallback to authority
|
|
113
|
+
1..2
|
|
114
|
+
ok 1 - type is _Request
|
|
115
|
+
ok 2 - should be equal
|
|
116
|
+
ok 8 - Request with trust proxy - no x-forwarded-host header and fallback to authority # time=0.272ms
|
|
117
|
+
|
|
118
|
+
# Subtest: Request with trust proxy - x-forwarded-host header has precedence over host
|
|
119
|
+
1..2
|
|
120
|
+
ok 1 - type is _Request
|
|
121
|
+
ok 2 - should be equal
|
|
122
|
+
ok 9 - Request with trust proxy - x-forwarded-host header has precedence over host # time=0.263ms
|
|
123
|
+
|
|
124
|
+
# Subtest: Request with trust proxy - handles multiple entries in x-forwarded-host/proto
|
|
125
|
+
1..3
|
|
126
|
+
ok 1 - type is _Request
|
|
127
|
+
ok 2 - should be equal
|
|
128
|
+
ok 3 - should be equal
|
|
129
|
+
ok 10 - Request with trust proxy - handles multiple entries in x-forwarded-host/proto # time=0.283ms
|
|
130
|
+
|
|
131
|
+
# Subtest: Request with trust proxy - plain
|
|
132
|
+
1..1
|
|
133
|
+
ok 1 - should be equivalent
|
|
134
|
+
ok 11 - Request with trust proxy - plain # time=0.218ms
|
|
135
|
+
|
|
136
|
+
# Subtest: Request with undefined socket
|
|
137
|
+
1..18
|
|
138
|
+
ok 1 - type is Request
|
|
139
|
+
ok 2 - should be equal
|
|
140
|
+
ok 3 - should be equal
|
|
141
|
+
ok 4 - should be equivalent
|
|
142
|
+
ok 5 - should be equal
|
|
143
|
+
ok 6 - should be equal
|
|
144
|
+
ok 7 - should be equal
|
|
145
|
+
ok 8 - should be equal
|
|
146
|
+
ok 9 - should be equal
|
|
147
|
+
ok 10 - should be equal
|
|
148
|
+
ok 11 - should be equivalent
|
|
149
|
+
ok 12 - should be equal
|
|
150
|
+
ok 13 - should be equal
|
|
151
|
+
ok 14 - should be equal
|
|
152
|
+
ok 15 - should be equivalent
|
|
153
|
+
ok 16 - type is Function
|
|
154
|
+
ok 17 - type is Function
|
|
155
|
+
ok 18 - type is Function
|
|
156
|
+
ok 12 - Request with undefined socket # time=0.65ms
|
|
157
|
+
|
|
158
|
+
# Subtest: Request with trust proxy and undefined socket
|
|
159
|
+
1..1
|
|
160
|
+
ok 1 - should be equivalent
|
|
161
|
+
ok 13 - Request with trust proxy and undefined socket # time=0.218ms
|
|
162
|
+
|
|
163
|
+
1..13
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
TAP version 14
|
|
2
|
+
# Subtest: start listening
|
|
3
|
+
ok 1 - server started
|
|
4
|
+
1..1
|
|
5
|
+
ok 1 - start listening # time=25.375ms
|
|
6
|
+
|
|
7
|
+
# Subtest: DNS errors does not stop the main server on localhost - promise interface
|
|
8
|
+
ok 1 - server started
|
|
9
|
+
1..1
|
|
10
|
+
ok 2 - DNS errors does not stop the main server on localhost - promise interface # time=4.235ms
|
|
11
|
+
|
|
12
|
+
# Subtest: DNS errors does not stop the main server on localhost - callback interface
|
|
13
|
+
1..2
|
|
14
|
+
ok 1 - should not error
|
|
15
|
+
ok 2 - server started
|
|
16
|
+
ok 3 - DNS errors does not stop the main server on localhost - callback interface # time=6.35ms
|
|
17
|
+
|
|
18
|
+
# Subtest: DNS returns empty binding
|
|
19
|
+
1..2
|
|
20
|
+
ok 1 - should not error
|
|
21
|
+
ok 2 - server started
|
|
22
|
+
ok 4 - DNS returns empty binding # time=5.554ms
|
|
23
|
+
|
|
24
|
+
# Subtest: DNS returns more than two binding
|
|
25
|
+
1..2
|
|
26
|
+
ok 1 - should not error
|
|
27
|
+
ok 2 - server started
|
|
28
|
+
ok 5 - DNS returns more than two binding # time=4.272ms
|
|
29
|
+
|
|
30
|
+
1..5
|