@toa.io/extensions.exposition 1.0.0-alpha.9 → 1.0.0-alpha.90
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/components/context.toa.yaml +2 -2
- package/components/identity.bans/manifest.toa.yaml +14 -6
- package/components/identity.bans/operations/transit.d.ts +14 -0
- package/components/identity.bans/operations/transit.js +11 -0
- package/components/identity.bans/operations/transit.js.map +1 -0
- package/components/identity.bans/operations/tsconfig.tsbuildinfo +1 -0
- package/components/identity.bans/source/transit.ts +21 -0
- package/components/identity.bans/tsconfig.json +9 -0
- package/components/identity.basic/manifest.toa.yaml +20 -10
- package/components/identity.basic/operations/authenticate.d.ts +5 -1
- package/components/identity.basic/operations/authenticate.js +5 -2
- package/components/identity.basic/operations/authenticate.js.map +1 -1
- package/components/identity.basic/operations/incept.d.ts +12 -0
- package/components/identity.basic/operations/incept.js +26 -0
- package/components/identity.basic/operations/incept.js.map +1 -0
- package/components/identity.basic/operations/transit.d.ts +4 -4
- package/components/identity.basic/operations/transit.js +8 -6
- package/components/identity.basic/operations/transit.js.map +1 -1
- package/components/identity.basic/operations/tsconfig.tsbuildinfo +1 -1
- package/components/identity.basic/operations/types.d.ts +8 -4
- package/components/identity.basic/source/authenticate.ts +16 -5
- package/components/identity.basic/source/incept.ts +38 -0
- package/components/identity.basic/source/transit.ts +11 -9
- package/components/identity.basic/source/types.ts +8 -4
- package/components/identity.federation/manifest.toa.yaml +32 -15
- package/components/identity.federation/operations/authenticate.d.ts +2 -2
- package/components/identity.federation/operations/authenticate.js +4 -11
- package/components/identity.federation/operations/authenticate.js.map +1 -1
- package/components/identity.federation/operations/incept.d.ts +11 -0
- package/components/identity.federation/operations/{create.js → incept.js} +6 -7
- package/components/identity.federation/operations/incept.js.map +1 -0
- package/components/identity.federation/operations/lib/assertions-as-values.js +4 -2
- package/components/identity.federation/operations/lib/assertions-as-values.js.map +1 -1
- package/components/identity.federation/operations/lib/jwt.d.ts +5 -5
- package/components/identity.federation/operations/lib/jwt.js +25 -12
- package/components/identity.federation/operations/lib/jwt.js.map +1 -1
- package/components/identity.federation/operations/tsconfig.tsbuildinfo +1 -1
- package/components/identity.federation/operations/types/configuration.d.ts +14 -0
- package/components/identity.federation/operations/types/configuration.js +3 -0
- package/components/identity.federation/operations/types/configuration.js.map +1 -0
- package/components/identity.federation/operations/{types.d.ts → types/context.d.ts} +15 -7
- package/components/identity.federation/operations/types/context.js +3 -0
- package/components/identity.federation/operations/types/context.js.map +1 -0
- package/components/identity.federation/operations/types/entity.d.ts +6 -0
- package/components/identity.federation/operations/types/entity.js +3 -0
- package/components/identity.federation/operations/types/entity.js.map +1 -0
- package/components/identity.federation/operations/types/index.d.ts +3 -0
- package/components/identity.federation/operations/types/index.js +20 -0
- package/components/identity.federation/operations/types/index.js.map +1 -0
- package/components/identity.federation/source/authenticate.ts +6 -19
- package/components/identity.federation/source/{create.ts → incept.ts} +10 -9
- package/components/identity.federation/source/lib/assertions-as-values.ts +5 -2
- package/components/identity.federation/source/lib/jwt.test.ts +123 -4
- package/components/identity.federation/source/lib/jwt.ts +36 -16
- package/components/identity.federation/source/types/configuration.ts +15 -0
- package/components/identity.federation/source/{types.ts → types/context.ts} +17 -6
- package/components/identity.federation/source/types/entity.ts +6 -0
- package/components/identity.federation/source/types/index.ts +3 -0
- package/components/identity.federation/tsconfig.json +5 -4
- package/components/identity.roles/manifest.toa.yaml +16 -6
- package/components/identity.roles/operations/grant.d.ts +10 -0
- package/components/identity.roles/operations/grant.js +21 -0
- package/components/identity.roles/operations/grant.js.map +1 -0
- package/components/identity.roles/operations/lib/Entity.d.ts +5 -0
- package/components/identity.roles/operations/lib/Entity.js +3 -0
- package/components/identity.roles/operations/lib/Entity.js.map +1 -0
- package/components/identity.roles/operations/list.d.ts +1 -4
- package/components/identity.roles/operations/list.js.map +1 -1
- package/components/identity.roles/operations/principal.d.ts +4 -6
- package/components/identity.roles/operations/principal.js +6 -1
- package/components/identity.roles/operations/principal.js.map +1 -1
- package/components/identity.roles/operations/tsconfig.tsbuildinfo +1 -1
- package/components/identity.roles/source/grant.ts +32 -0
- package/components/identity.roles/source/lib/Entity.ts +5 -0
- package/components/identity.roles/source/list.ts +2 -4
- package/components/identity.roles/source/principal.ts +10 -8
- package/components/identity.tokens/manifest.toa.yaml +19 -4
- package/components/identity.tokens/operations/authenticate.d.ts +2 -2
- package/components/identity.tokens/operations/authenticate.js +12 -5
- package/components/identity.tokens/operations/authenticate.js.map +1 -1
- package/components/identity.tokens/operations/decrypt.js +1 -0
- package/components/identity.tokens/operations/decrypt.js.map +1 -1
- package/components/identity.tokens/operations/encrypt.js +5 -1
- package/components/identity.tokens/operations/encrypt.js.map +1 -1
- package/components/identity.tokens/operations/tsconfig.tsbuildinfo +1 -1
- package/components/identity.tokens/operations/types.d.ts +8 -2
- package/components/identity.tokens/receivers/identity.bans.created.js +3 -0
- package/components/identity.tokens/source/authenticate.test.ts +11 -4
- package/components/identity.tokens/source/authenticate.ts +14 -6
- package/components/identity.tokens/source/decrypt.test.ts +5 -3
- package/components/identity.tokens/source/decrypt.ts +9 -8
- package/components/identity.tokens/source/encrypt.test.ts +26 -2
- package/components/identity.tokens/source/encrypt.ts +5 -1
- package/components/identity.tokens/source/types.ts +9 -2
- package/components/octets.storage/manifest.toa.yaml +9 -11
- package/components/octets.storage/operations/get.js +3 -3
- package/components/octets.storage/operations/head.js +7 -0
- package/components/octets.storage/operations/put.js +121 -0
- package/documentation/access.md +75 -38
- package/documentation/authorities.md +49 -0
- package/documentation/cache.md +8 -1
- package/documentation/components.md +61 -22
- package/documentation/flow.md +31 -0
- package/documentation/identity.md +17 -22
- package/documentation/introspection.md +82 -0
- package/documentation/octets.md +95 -67
- package/documentation/protocol.md +13 -3
- package/documentation/query.md +29 -4
- package/documentation/require.md +15 -0
- package/documentation/tree.md +13 -0
- package/documentation/vary.md +14 -14
- package/features/access.feature +77 -46
- package/features/annotation.feature +1 -0
- package/features/auth.claim.feature +170 -0
- package/features/authorities.basic.feature +141 -0
- package/features/authorities.feature +32 -0
- package/features/authorities.federation.feature +100 -0
- package/features/authorities.tokens.feature +117 -0
- package/features/body.feature +2 -0
- package/features/cache.feature +109 -5
- package/features/cors.feature +6 -1
- package/features/debug.feature +34 -0
- package/features/directives.feature +3 -0
- package/features/dynamic.feature +48 -0
- package/features/errors.feature +32 -7
- package/features/etag.feature +108 -0
- package/features/flow.feature +45 -0
- package/features/identity.bans.feature +137 -0
- package/features/identity.basic.feature +97 -26
- package/features/identity.feature +18 -6
- package/features/identity.federation.feature +66 -11
- package/features/identity.roles.feature +250 -7
- package/features/identity.tokens.feature +54 -4
- package/features/introspection.feature +153 -0
- package/features/io.feature +38 -1
- package/features/methods.feature +47 -0
- package/features/{octets.meta.feature → octets.attributes.feature} +16 -12
- package/features/octets.cloudinary.feature +68 -0
- package/features/octets.download.feature +189 -0
- package/features/octets.entries.feature +13 -55
- package/features/octets.feature +83 -107
- package/features/octets.workflows.feature +242 -58
- package/features/probes.feature +14 -0
- package/features/{queries.feature → query.feature} +77 -2
- package/features/realtime.feature +34 -0
- package/features/require.feature +67 -0
- package/features/response.feature +38 -3
- package/features/routes.feature +93 -2
- package/features/server.feature +21 -0
- package/features/steps/.env.example +3 -0
- package/features/steps/Database.ts +16 -9
- package/features/steps/Gateway.ts +23 -6
- package/features/steps/IdP.ts +30 -25
- package/features/steps/Parameters.ts +45 -3
- package/features/steps/Realtime.ts +151 -0
- package/features/steps/components/echo/manifest.toa.yaml +14 -1
- package/features/steps/components/echo/operations/identity.js +7 -0
- package/features/steps/components/echo/operations/parameters.js +7 -0
- package/features/steps/components/echo.beacon/manifest.toa.yaml +2 -0
- package/features/steps/components/echo.beacon/operations/hello.js +5 -0
- package/features/steps/components/octets.tester/manifest.toa.yaml +22 -2
- package/features/steps/components/octets.tester/operations/authority.js +7 -0
- package/features/steps/components/octets.tester/operations/bar.js +0 -1
- package/features/steps/components/octets.tester/operations/baz.js +0 -2
- package/features/steps/components/octets.tester/operations/foo.js +1 -2
- package/features/steps/components/octets.tester/operations/redirect.js +12 -0
- package/features/steps/components/octets.tester/operations/yex.js +16 -0
- package/features/steps/components/octets.tester/operations/yield.js +13 -0
- package/features/steps/components/pots/manifest.toa.yaml +14 -3
- package/features/steps/components/users/manifest.toa.yaml +0 -1
- package/features/steps/components/users.properties/manifest.toa.yaml +1 -1
- package/features/streams.feature +5 -0
- package/features/timing.feature +4 -1
- package/features/vary.feature +71 -0
- package/package.json +23 -14
- package/readme.md +19 -14
- package/schemas/annotation.cos.yaml +1 -1
- package/schemas/method.cos.yaml +1 -1
- package/schemas/node.cos.yaml +2 -0
- package/schemas/octets/put.cos.yaml +25 -0
- package/schemas/query.cos.yaml +4 -10
- package/source/Annotation.ts +3 -3
- package/source/Branch.ts +1 -0
- package/source/Composition.ts +0 -6
- package/source/Context.ts +1 -0
- package/source/Directive.ts +4 -5
- package/source/Endpoint.ts +59 -17
- package/source/Factory.ts +22 -13
- package/source/Gateway.ts +64 -17
- package/source/HTTP/Context.ts +25 -2
- package/source/HTTP/Server.ts +57 -43
- package/source/HTTP/exceptions.ts +13 -1
- package/source/HTTP/formats/index.ts +3 -3
- package/source/HTTP/messages.test.ts +45 -2
- package/source/HTTP/messages.ts +29 -5
- package/source/Introspection.ts +11 -0
- package/source/Mapping.ts +68 -21
- package/source/Query.test.ts +3 -3
- package/source/Query.ts +123 -33
- package/source/RTD/Context.ts +1 -1
- package/source/RTD/Endpoint.ts +3 -0
- package/source/RTD/Method.ts +16 -0
- package/source/RTD/Node.ts +29 -13
- package/source/RTD/Route.ts +5 -4
- package/source/RTD/Tree.ts +2 -2
- package/source/RTD/factory.ts +5 -2
- package/source/RTD/syntax/parse.test.ts +1 -1
- package/source/RTD/syntax/parse.ts +37 -24
- package/source/RTD/syntax/types.ts +6 -4
- package/source/Remotes.ts +7 -6
- package/source/Tenant.ts +6 -20
- package/source/deployment.ts +33 -23
- package/source/directives/auth/Authorization.ts +44 -21
- package/source/directives/auth/Delegate.ts +42 -0
- package/source/directives/auth/Echo.ts +19 -5
- package/source/directives/auth/Federation.ts +84 -0
- package/source/directives/auth/Incept.ts +4 -3
- package/source/directives/auth/Role.test.ts +53 -6
- package/source/directives/auth/Role.ts +22 -14
- package/source/directives/auth/Scheme.ts +1 -1
- package/source/directives/auth/split.ts +1 -1
- package/source/directives/auth/types.ts +2 -2
- package/source/directives/cache/Cache.ts +13 -6
- package/source/directives/cache/Control.ts +42 -16
- package/source/directives/cors/CORS.ts +1 -1
- package/source/directives/dev/Development.ts +1 -1
- package/source/directives/flow/Fetch.ts +88 -0
- package/source/directives/flow/Flow.ts +34 -0
- package/source/directives/flow/index.ts +3 -0
- package/source/directives/flow/types.ts +6 -0
- package/source/directives/index.ts +3 -1
- package/source/directives/io/Input.ts +4 -4
- package/source/directives/io/Output.ts +5 -4
- package/source/directives/octets/Context.ts +3 -2
- package/source/directives/octets/Delete.ts +11 -11
- package/source/directives/octets/Get.ts +84 -0
- package/source/directives/octets/Octets.ts +7 -11
- package/source/directives/octets/{Store.ts → Put.ts} +36 -21
- package/source/directives/octets/Workflow.ts +1 -1
- package/source/directives/octets/bytes.test.ts +30 -0
- package/source/directives/octets/bytes.ts +18 -0
- package/source/directives/octets/schemas.ts +4 -8
- package/source/directives/octets/workflows/Execution.ts +60 -8
- package/source/directives/octets/workflows/Workflow.ts +4 -4
- package/source/directives/require/Directive.ts +5 -0
- package/source/directives/require/Headers.ts +20 -0
- package/source/directives/require/Require.ts +28 -0
- package/source/directives/require/index.ts +3 -0
- package/source/directives/vary/Directive.ts +2 -1
- package/source/directives/vary/Embed.ts +14 -8
- package/source/directives/vary/Vary.ts +6 -4
- package/source/directives/vary/embeddings/Authority.ts +8 -0
- package/source/directives/vary/embeddings/Embedding.ts +2 -1
- package/source/directives/vary/embeddings/Language.ts +2 -2
- package/source/directives/vary/embeddings/Parameter.ts +14 -0
- package/source/directives/vary/embeddings/index.ts +6 -4
- package/source/exceptions.ts +17 -11
- package/source/manifest.ts +10 -11
- package/source/root.ts +5 -5
- package/source/schemas.ts +1 -1
- package/transpiled/Annotation.d.ts +3 -3
- package/transpiled/Branch.d.ts +1 -0
- package/transpiled/Composition.d.ts +0 -1
- package/transpiled/Composition.js +0 -4
- package/transpiled/Composition.js.map +1 -1
- package/transpiled/Context.d.ts +1 -0
- package/transpiled/Directive.js +4 -4
- package/transpiled/Directive.js.map +1 -1
- package/transpiled/Endpoint.d.ts +6 -4
- package/transpiled/Endpoint.js +39 -9
- package/transpiled/Endpoint.js.map +1 -1
- package/transpiled/Factory.d.ts +3 -2
- package/transpiled/Factory.js +18 -10
- package/transpiled/Factory.js.map +1 -1
- package/transpiled/Gateway.d.ts +3 -0
- package/transpiled/Gateway.js +49 -10
- package/transpiled/Gateway.js.map +1 -1
- package/transpiled/HTTP/Context.d.ts +8 -1
- package/transpiled/HTTP/Context.js +16 -2
- package/transpiled/HTTP/Context.js.map +1 -1
- package/transpiled/HTTP/Server.d.ts +13 -2
- package/transpiled/HTTP/Server.js +43 -36
- package/transpiled/HTTP/Server.js.map +1 -1
- package/transpiled/HTTP/exceptions.d.ts +7 -1
- package/transpiled/HTTP/exceptions.js +13 -1
- package/transpiled/HTTP/exceptions.js.map +1 -1
- package/transpiled/HTTP/formats/index.js +3 -3
- package/transpiled/HTTP/formats/index.js.map +1 -1
- package/transpiled/HTTP/messages.d.ts +1 -0
- package/transpiled/HTTP/messages.js +28 -5
- package/transpiled/HTTP/messages.js.map +1 -1
- package/transpiled/Introspection.d.ts +9 -0
- package/transpiled/Introspection.js +3 -0
- package/transpiled/Introspection.js.map +1 -0
- package/transpiled/Mapping.d.ts +11 -2
- package/transpiled/Mapping.js +50 -19
- package/transpiled/Mapping.js.map +1 -1
- package/transpiled/Query.d.ts +10 -1
- package/transpiled/Query.js +87 -30
- package/transpiled/Query.js.map +1 -1
- package/transpiled/RTD/Context.d.ts +1 -1
- package/transpiled/RTD/Endpoint.d.ts +1 -0
- package/transpiled/RTD/Method.d.ts +4 -0
- package/transpiled/RTD/Method.js +11 -0
- package/transpiled/RTD/Method.js.map +1 -1
- package/transpiled/RTD/Node.d.ts +4 -1
- package/transpiled/RTD/Node.js +23 -12
- package/transpiled/RTD/Node.js.map +1 -1
- package/transpiled/RTD/Route.d.ts +1 -1
- package/transpiled/RTD/Route.js +0 -1
- package/transpiled/RTD/Route.js.map +1 -1
- package/transpiled/RTD/Tree.d.ts +1 -1
- package/transpiled/RTD/Tree.js.map +1 -1
- package/transpiled/RTD/factory.js +5 -2
- package/transpiled/RTD/factory.js.map +1 -1
- package/transpiled/RTD/syntax/parse.js +34 -22
- package/transpiled/RTD/syntax/parse.js.map +1 -1
- package/transpiled/RTD/syntax/types.d.ts +5 -3
- package/transpiled/RTD/syntax/types.js +1 -1
- package/transpiled/RTD/syntax/types.js.map +1 -1
- package/transpiled/Remotes.d.ts +4 -4
- package/transpiled/Remotes.js +6 -5
- package/transpiled/Remotes.js.map +1 -1
- package/transpiled/Tenant.d.ts +5 -5
- package/transpiled/Tenant.js +2 -13
- package/transpiled/Tenant.js.map +1 -1
- package/transpiled/deployment.d.ts +1 -1
- package/transpiled/deployment.js +28 -20
- package/transpiled/deployment.js.map +1 -1
- package/transpiled/directives/auth/Authorization.d.ts +1 -1
- package/transpiled/directives/auth/Authorization.js +32 -18
- package/transpiled/directives/auth/Authorization.js.map +1 -1
- package/transpiled/directives/auth/Delegate.d.ts +10 -0
- package/transpiled/directives/auth/Delegate.js +34 -0
- package/transpiled/directives/auth/Delegate.js.map +1 -0
- package/transpiled/directives/auth/Echo.d.ts +4 -3
- package/transpiled/directives/auth/Echo.js +13 -3
- package/transpiled/directives/auth/Echo.js.map +1 -1
- package/transpiled/directives/auth/Federation.d.ts +16 -0
- package/transpiled/directives/auth/Federation.js +57 -0
- package/transpiled/directives/auth/Federation.js.map +1 -0
- package/transpiled/directives/auth/Incept.js +4 -3
- package/transpiled/directives/auth/Incept.js.map +1 -1
- package/transpiled/directives/auth/Role.d.ts +4 -1
- package/transpiled/directives/auth/Role.js +20 -14
- package/transpiled/directives/auth/Role.js.map +1 -1
- package/transpiled/directives/auth/Scheme.js +1 -1
- package/transpiled/directives/auth/Scheme.js.map +1 -1
- package/transpiled/directives/auth/split.js +1 -1
- package/transpiled/directives/auth/split.js.map +1 -1
- package/transpiled/directives/auth/types.d.ts +1 -1
- package/transpiled/directives/cache/Cache.d.ts +3 -3
- package/transpiled/directives/cache/Cache.js +10 -4
- package/transpiled/directives/cache/Cache.js.map +1 -1
- package/transpiled/directives/cache/Control.d.ts +2 -1
- package/transpiled/directives/cache/Control.js +29 -12
- package/transpiled/directives/cache/Control.js.map +1 -1
- package/transpiled/directives/cors/CORS.js +1 -1
- package/transpiled/directives/cors/CORS.js.map +1 -1
- package/transpiled/directives/dev/Development.js +1 -1
- package/transpiled/directives/dev/Development.js.map +1 -1
- package/transpiled/directives/flow/Fetch.d.ts +13 -0
- package/transpiled/directives/flow/Fetch.js +59 -0
- package/transpiled/directives/flow/Fetch.js.map +1 -0
- package/transpiled/directives/flow/Flow.d.ts +10 -0
- package/transpiled/directives/flow/Flow.js +27 -0
- package/transpiled/directives/flow/Flow.js.map +1 -0
- package/transpiled/directives/flow/index.d.ts +2 -0
- package/transpiled/directives/flow/index.js +6 -0
- package/transpiled/directives/flow/index.js.map +1 -0
- package/transpiled/directives/flow/types.d.ts +5 -0
- package/transpiled/directives/flow/types.js.map +1 -0
- package/transpiled/directives/index.js +3 -1
- package/transpiled/directives/index.js.map +1 -1
- package/transpiled/directives/io/Input.js +2 -2
- package/transpiled/directives/io/Input.js.map +1 -1
- package/transpiled/directives/io/Output.js +2 -2
- package/transpiled/directives/io/Output.js.map +1 -1
- package/transpiled/directives/octets/Context.js +4 -24
- package/transpiled/directives/octets/Context.js.map +1 -1
- package/transpiled/directives/octets/Delete.js +8 -8
- package/transpiled/directives/octets/Delete.js.map +1 -1
- package/transpiled/directives/octets/{Fetch.d.ts → Get.d.ts} +5 -6
- package/transpiled/directives/octets/{Fetch.js → Get.js} +24 -29
- package/transpiled/directives/octets/Get.js.map +1 -0
- package/transpiled/directives/octets/Octets.js +7 -11
- package/transpiled/directives/octets/Octets.js.map +1 -1
- package/transpiled/directives/octets/{Store.d.ts → Put.d.ts} +7 -2
- package/transpiled/directives/octets/{Store.js → Put.js} +26 -19
- package/transpiled/directives/octets/Put.js.map +1 -0
- package/transpiled/directives/octets/Workflow.js +1 -1
- package/transpiled/directives/octets/Workflow.js.map +1 -1
- package/transpiled/directives/octets/bytes.d.ts +1 -0
- package/transpiled/directives/octets/bytes.js +21 -0
- package/transpiled/directives/octets/bytes.js.map +1 -0
- package/transpiled/directives/octets/schemas.d.ts +4 -8
- package/transpiled/directives/octets/schemas.js +3 -6
- package/transpiled/directives/octets/schemas.js.map +1 -1
- package/transpiled/directives/octets/workflows/Execution.d.ts +5 -1
- package/transpiled/directives/octets/workflows/Execution.js +44 -9
- package/transpiled/directives/octets/workflows/Execution.js.map +1 -1
- package/transpiled/directives/octets/workflows/Workflow.d.ts +1 -1
- package/transpiled/directives/octets/workflows/Workflow.js +2 -1
- package/transpiled/directives/octets/workflows/Workflow.js.map +1 -1
- package/transpiled/directives/require/Directive.d.ts +4 -0
- package/transpiled/directives/require/Directive.js +3 -0
- package/transpiled/directives/require/Directive.js.map +1 -0
- package/transpiled/directives/require/Headers.d.ts +7 -0
- package/transpiled/directives/require/Headers.js +19 -0
- package/transpiled/directives/require/Headers.js.map +1 -0
- package/transpiled/directives/require/Require.d.ts +9 -0
- package/transpiled/directives/require/Require.js +27 -0
- package/transpiled/directives/require/Require.js.map +1 -0
- package/transpiled/directives/require/index.d.ts +2 -0
- package/transpiled/directives/require/index.js +6 -0
- package/transpiled/directives/require/index.js.map +1 -0
- package/transpiled/directives/vary/Directive.d.ts +2 -1
- package/transpiled/directives/vary/Embed.d.ts +2 -1
- package/transpiled/directives/vary/Embed.js +8 -6
- package/transpiled/directives/vary/Embed.js.map +1 -1
- package/transpiled/directives/vary/Vary.d.ts +2 -2
- package/transpiled/directives/vary/Vary.js +3 -3
- package/transpiled/directives/vary/Vary.js.map +1 -1
- package/transpiled/directives/vary/embeddings/Authority.d.ts +5 -0
- package/transpiled/directives/vary/embeddings/Authority.js +10 -0
- package/transpiled/directives/vary/embeddings/Authority.js.map +1 -0
- package/transpiled/directives/vary/embeddings/Embedding.d.ts +2 -1
- package/transpiled/directives/vary/embeddings/Language.js +2 -2
- package/transpiled/directives/vary/embeddings/Language.js.map +1 -1
- package/transpiled/directives/vary/embeddings/Parameter.d.ts +7 -0
- package/transpiled/directives/vary/embeddings/Parameter.js +14 -0
- package/transpiled/directives/vary/embeddings/Parameter.js.map +1 -0
- package/transpiled/directives/vary/embeddings/index.d.ts +2 -2
- package/transpiled/directives/vary/embeddings/index.js +8 -4
- package/transpiled/directives/vary/embeddings/index.js.map +1 -1
- package/transpiled/exceptions.d.ts +3 -2
- package/transpiled/exceptions.js +10 -5
- package/transpiled/exceptions.js.map +1 -1
- package/transpiled/manifest.js +10 -11
- package/transpiled/manifest.js.map +1 -1
- package/transpiled/root.js +5 -5
- package/transpiled/root.js.map +1 -1
- package/transpiled/schemas.d.ts +1 -1
- package/transpiled/schemas.js +2 -2
- package/transpiled/schemas.js.map +1 -1
- package/transpiled/tsconfig.tsbuildinfo +1 -1
- package/tsconfig.json +8 -2
- package/components/identity.basic/operations/create.d.ts +0 -10
- package/components/identity.basic/operations/create.js +0 -10
- package/components/identity.basic/operations/create.js.map +0 -1
- package/components/identity.basic/source/create.ts +0 -18
- package/components/identity.federation/operations/create.d.ts +0 -10
- package/components/identity.federation/operations/create.js.map +0 -1
- package/components/identity.federation/operations/schemas.d.ts +0 -59
- package/components/identity.federation/operations/schemas.js +0 -9
- package/components/identity.federation/operations/schemas.js.map +0 -1
- package/components/identity.federation/operations/types.js.map +0 -1
- package/components/identity.federation/source/schemas.ts +0 -61
- package/components/octets.storage/operations/fetch.js +0 -46
- package/components/octets.storage/operations/list.js +0 -7
- package/components/octets.storage/operations/permute.js +0 -7
- package/components/octets.storage/operations/store.js +0 -11
- package/features/steps/components/octets.tester/operations/diversify.js +0 -14
- package/schemas/octets/context.cos.yaml +0 -1
- package/schemas/octets/fetch.cos.yaml +0 -3
- package/schemas/octets/permute.cos.yaml +0 -1
- package/schemas/octets/store.cos.yaml +0 -3
- package/source/HTTP/Server.test.ts +0 -126
- package/source/directives/octets/Fetch.ts +0 -100
- package/source/directives/octets/List.ts +0 -72
- package/source/directives/octets/Permute.ts +0 -44
- package/transpiled/directives/octets/Fetch.js.map +0 -1
- package/transpiled/directives/octets/List.d.ts +0 -16
- package/transpiled/directives/octets/List.js +0 -74
- package/transpiled/directives/octets/List.js.map +0 -1
- package/transpiled/directives/octets/Permute.d.ts +0 -11
- package/transpiled/directives/octets/Permute.js +0 -58
- package/transpiled/directives/octets/Permute.js.map +0 -1
- package/transpiled/directives/octets/Store.js.map +0 -1
- /package/schemas/octets/{list.cos.yaml → get.cos.yaml} +0 -0
- /package/{components/identity.federation/operations → transpiled/directives/flow}/types.js +0 -0
|
@@ -8,22 +8,22 @@ Feature: Octets storage workflows
|
|
|
8
8
|
auth:anonymous: true
|
|
9
9
|
octets:context: octets
|
|
10
10
|
POST:
|
|
11
|
-
octets:
|
|
11
|
+
octets:put:
|
|
12
12
|
workflow:
|
|
13
13
|
- add-foo: octets.tester.foo
|
|
14
14
|
add-bar: octets.tester.bar
|
|
15
15
|
- add-baz: octets.tester.baz
|
|
16
|
-
- diversify: octets.tester.diversify
|
|
17
16
|
/*:
|
|
18
17
|
io:output: true
|
|
19
18
|
GET:
|
|
20
|
-
octets:
|
|
19
|
+
octets:get:
|
|
21
20
|
meta: true
|
|
22
21
|
"""
|
|
23
22
|
When the stream of `lenna.ascii` is received with the following headers:
|
|
24
23
|
"""
|
|
25
24
|
POST / HTTP/1.1
|
|
26
|
-
|
|
25
|
+
host: nex.toa.io
|
|
26
|
+
accept: application/yaml, multipart/yaml
|
|
27
27
|
content-type: application/octet-stream
|
|
28
28
|
"""
|
|
29
29
|
Then the following reply is sent:
|
|
@@ -32,47 +32,25 @@ Feature: Octets storage workflows
|
|
|
32
32
|
content-type: multipart/yaml; boundary=cut
|
|
33
33
|
|
|
34
34
|
--cut
|
|
35
|
+
|
|
35
36
|
id: 10cf16b458f759e0d617f2f3d83599ff
|
|
36
37
|
type: application/octet-stream
|
|
37
38
|
size: 8169
|
|
38
39
|
--cut
|
|
39
|
-
|
|
40
|
+
|
|
41
|
+
step: add-foo
|
|
42
|
+
status: completed
|
|
40
43
|
--cut
|
|
41
|
-
|
|
44
|
+
|
|
45
|
+
step: add-bar
|
|
46
|
+
output:
|
|
42
47
|
bar: baz
|
|
48
|
+
status: completed
|
|
43
49
|
--cut
|
|
44
|
-
add-baz: null
|
|
45
|
-
--cut
|
|
46
|
-
diversify: null
|
|
47
|
-
--cut--
|
|
48
|
-
"""
|
|
49
|
-
When the following request is received:
|
|
50
|
-
"""
|
|
51
|
-
GET /10cf16b458f759e0d617f2f3d83599ff HTTP/1.1
|
|
52
|
-
accept: application/vnd.toa.octets.entry+yaml
|
|
53
|
-
"""
|
|
54
|
-
Then the following reply is sent:
|
|
55
|
-
"""
|
|
56
|
-
200 OK
|
|
57
|
-
content-type: application/yaml
|
|
58
50
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
meta:
|
|
63
|
-
foo: bar
|
|
64
|
-
bar: baz
|
|
65
|
-
baz: qux
|
|
66
|
-
"""
|
|
67
|
-
When the following request is received:
|
|
68
|
-
"""
|
|
69
|
-
GET /10cf16b458f759e0d617f2f3d83599ff.hello.png HTTP/1.1
|
|
70
|
-
"""
|
|
71
|
-
Then the stream equals to `lenna.png` is sent with the following headers:
|
|
72
|
-
"""
|
|
73
|
-
200 OK
|
|
74
|
-
content-type: image/png
|
|
75
|
-
content-length: 473831
|
|
51
|
+
step: add-baz
|
|
52
|
+
status: completed
|
|
53
|
+
--cut--
|
|
76
54
|
"""
|
|
77
55
|
|
|
78
56
|
Scenario: Getting error when running workflow on `store`
|
|
@@ -83,16 +61,17 @@ Feature: Octets storage workflows
|
|
|
83
61
|
auth:anonymous: true
|
|
84
62
|
octets:context: octets
|
|
85
63
|
POST:
|
|
86
|
-
octets:
|
|
64
|
+
octets:put:
|
|
87
65
|
workflow:
|
|
88
|
-
add-foo: octets.tester.foo
|
|
89
|
-
add-bar: octets.tester.err
|
|
90
|
-
add-baz: octets.tester.baz
|
|
66
|
+
- add-foo: octets.tester.foo
|
|
67
|
+
- add-bar: octets.tester.err
|
|
68
|
+
- add-baz: octets.tester.baz
|
|
91
69
|
"""
|
|
92
70
|
When the stream of `lenna.ascii` is received with the following headers:
|
|
93
71
|
"""
|
|
94
72
|
POST / HTTP/1.1
|
|
95
|
-
|
|
73
|
+
host: nex.toa.io
|
|
74
|
+
accept: application/yaml, multipart/yaml
|
|
96
75
|
content-type: application/octet-stream
|
|
97
76
|
"""
|
|
98
77
|
Then the following reply is sent:
|
|
@@ -105,12 +84,16 @@ Feature: Octets storage workflows
|
|
|
105
84
|
type: application/octet-stream
|
|
106
85
|
size: 8169
|
|
107
86
|
--cut
|
|
108
|
-
|
|
87
|
+
|
|
88
|
+
step: add-foo
|
|
89
|
+
status: completed
|
|
109
90
|
--cut
|
|
91
|
+
|
|
92
|
+
step: add-bar
|
|
110
93
|
error:
|
|
111
|
-
step: add-bar
|
|
112
94
|
code: ERROR
|
|
113
95
|
message: Something went wrong
|
|
96
|
+
status: completed
|
|
114
97
|
--cut--
|
|
115
98
|
"""
|
|
116
99
|
|
|
@@ -122,10 +105,10 @@ Feature: Octets storage workflows
|
|
|
122
105
|
auth:anonymous: true
|
|
123
106
|
octets:context: octets
|
|
124
107
|
POST:
|
|
125
|
-
octets:
|
|
108
|
+
octets:put: ~
|
|
126
109
|
/*:
|
|
127
110
|
GET:
|
|
128
|
-
octets:
|
|
111
|
+
octets:get: ~
|
|
129
112
|
DELETE:
|
|
130
113
|
octets:delete:
|
|
131
114
|
workflow:
|
|
@@ -134,6 +117,7 @@ Feature: Octets storage workflows
|
|
|
134
117
|
When the stream of `lenna.ascii` is received with the following headers:
|
|
135
118
|
"""
|
|
136
119
|
POST / HTTP/1.1
|
|
120
|
+
host: nex.toa.io
|
|
137
121
|
content-type: application/octet-stream
|
|
138
122
|
"""
|
|
139
123
|
Then the following reply is sent:
|
|
@@ -143,7 +127,8 @@ Feature: Octets storage workflows
|
|
|
143
127
|
When the following request is received:
|
|
144
128
|
"""
|
|
145
129
|
DELETE /10cf16b458f759e0d617f2f3d83599ff HTTP/1.1
|
|
146
|
-
|
|
130
|
+
host: nex.toa.io
|
|
131
|
+
accept: application/yaml, multipart/yaml
|
|
147
132
|
"""
|
|
148
133
|
Then the following reply is sent:
|
|
149
134
|
"""
|
|
@@ -151,12 +136,15 @@ Feature: Octets storage workflows
|
|
|
151
136
|
content-type: multipart/yaml; boundary=cut
|
|
152
137
|
|
|
153
138
|
--cut
|
|
154
|
-
|
|
139
|
+
step: echo
|
|
140
|
+
status: completed
|
|
141
|
+
output: 10cf16b458f759e0d617f2f3d83599ff
|
|
155
142
|
--cut--
|
|
156
143
|
"""
|
|
157
144
|
When the following request is received:
|
|
158
145
|
"""
|
|
159
146
|
GET /10cf16b458f759e0d617f2f3d83599ff HTTP/1.1
|
|
147
|
+
host: nex.toa.io
|
|
160
148
|
"""
|
|
161
149
|
Then the following reply is sent:
|
|
162
150
|
"""
|
|
@@ -171,10 +159,10 @@ Feature: Octets storage workflows
|
|
|
171
159
|
auth:anonymous: true
|
|
172
160
|
octets:context: octets
|
|
173
161
|
POST:
|
|
174
|
-
octets:
|
|
162
|
+
octets:put: ~
|
|
175
163
|
/*:
|
|
176
164
|
GET:
|
|
177
|
-
octets:
|
|
165
|
+
octets:get: ~
|
|
178
166
|
DELETE:
|
|
179
167
|
octets:delete:
|
|
180
168
|
workflow:
|
|
@@ -183,6 +171,7 @@ Feature: Octets storage workflows
|
|
|
183
171
|
When the stream of `lenna.ascii` is received with the following headers:
|
|
184
172
|
"""
|
|
185
173
|
POST / HTTP/1.1
|
|
174
|
+
host: nex.toa.io
|
|
186
175
|
content-type: application/octet-stream
|
|
187
176
|
"""
|
|
188
177
|
Then the following reply is sent:
|
|
@@ -192,7 +181,8 @@ Feature: Octets storage workflows
|
|
|
192
181
|
When the following request is received:
|
|
193
182
|
"""
|
|
194
183
|
DELETE /10cf16b458f759e0d617f2f3d83599ff HTTP/1.1
|
|
195
|
-
|
|
184
|
+
host: nex.toa.io
|
|
185
|
+
accept: application/yaml, multipart/yaml
|
|
196
186
|
"""
|
|
197
187
|
Then the following reply is sent:
|
|
198
188
|
"""
|
|
@@ -200,8 +190,10 @@ Feature: Octets storage workflows
|
|
|
200
190
|
content-type: multipart/yaml; boundary=cut
|
|
201
191
|
|
|
202
192
|
--cut
|
|
193
|
+
|
|
194
|
+
step: err
|
|
195
|
+
status: completed
|
|
203
196
|
error:
|
|
204
|
-
step: err
|
|
205
197
|
code: ERROR
|
|
206
198
|
message: Something went wrong
|
|
207
199
|
--cut--
|
|
@@ -209,6 +201,7 @@ Feature: Octets storage workflows
|
|
|
209
201
|
When the following request is received:
|
|
210
202
|
"""
|
|
211
203
|
GET /10cf16b458f759e0d617f2f3d83599ff HTTP/1.1
|
|
204
|
+
host: nex.toa.io
|
|
212
205
|
"""
|
|
213
206
|
Then the following reply is sent:
|
|
214
207
|
"""
|
|
@@ -224,14 +217,53 @@ Feature: Octets storage workflows
|
|
|
224
217
|
auth:anonymous: true
|
|
225
218
|
octets:context: octets
|
|
226
219
|
POST:
|
|
227
|
-
octets:
|
|
220
|
+
octets:put:
|
|
228
221
|
workflow:
|
|
229
222
|
concat: octets.tester.concat
|
|
230
223
|
"""
|
|
231
224
|
When the stream of `lenna.ascii` is received with the following headers:
|
|
232
225
|
"""
|
|
233
226
|
POST /hello/world/ HTTP/1.1
|
|
234
|
-
|
|
227
|
+
host: nex.toa.io
|
|
228
|
+
accept: application/yaml, multipart/yaml
|
|
229
|
+
content-type: application/octet-stream
|
|
230
|
+
"""
|
|
231
|
+
Then the following reply is sent:
|
|
232
|
+
"""
|
|
233
|
+
201 Created
|
|
234
|
+
content-type: multipart/yaml; boundary=cut
|
|
235
|
+
|
|
236
|
+
--cut
|
|
237
|
+
|
|
238
|
+
id: 10cf16b458f759e0d617f2f3d83599ff
|
|
239
|
+
type: application/octet-stream
|
|
240
|
+
size: 8169
|
|
241
|
+
--cut
|
|
242
|
+
|
|
243
|
+
step: concat
|
|
244
|
+
status: completed
|
|
245
|
+
output: hello world
|
|
246
|
+
--cut--
|
|
247
|
+
"""
|
|
248
|
+
|
|
249
|
+
Scenario: Passing authority to the workflow
|
|
250
|
+
Given the `octets.tester` is running
|
|
251
|
+
And the annotation:
|
|
252
|
+
"""yaml
|
|
253
|
+
/:
|
|
254
|
+
/:a/:b:
|
|
255
|
+
auth:anonymous: true
|
|
256
|
+
octets:context: octets
|
|
257
|
+
POST:
|
|
258
|
+
octets:put:
|
|
259
|
+
workflow:
|
|
260
|
+
authority: octets.tester.authority
|
|
261
|
+
"""
|
|
262
|
+
When the stream of `lenna.ascii` is received with the following headers:
|
|
263
|
+
"""
|
|
264
|
+
POST /hello/world/ HTTP/1.1
|
|
265
|
+
host: nex.toa.io
|
|
266
|
+
accept: application/yaml, multipart/yaml
|
|
235
267
|
content-type: application/octet-stream
|
|
236
268
|
"""
|
|
237
269
|
Then the following reply is sent:
|
|
@@ -240,11 +272,15 @@ Feature: Octets storage workflows
|
|
|
240
272
|
content-type: multipart/yaml; boundary=cut
|
|
241
273
|
|
|
242
274
|
--cut
|
|
275
|
+
|
|
243
276
|
id: 10cf16b458f759e0d617f2f3d83599ff
|
|
244
277
|
type: application/octet-stream
|
|
245
278
|
size: 8169
|
|
246
279
|
--cut
|
|
247
|
-
|
|
280
|
+
|
|
281
|
+
step: authority
|
|
282
|
+
status: completed
|
|
283
|
+
output: nex
|
|
248
284
|
--cut--
|
|
249
285
|
"""
|
|
250
286
|
|
|
@@ -256,7 +292,7 @@ Feature: Octets storage workflows
|
|
|
256
292
|
auth:anonymous: true
|
|
257
293
|
octets:context: octets
|
|
258
294
|
POST:
|
|
259
|
-
octets:
|
|
295
|
+
octets:put: ~
|
|
260
296
|
/*:
|
|
261
297
|
DELETE:
|
|
262
298
|
octets:workflow:
|
|
@@ -265,6 +301,7 @@ Feature: Octets storage workflows
|
|
|
265
301
|
When the stream of `lenna.ascii` is received with the following headers:
|
|
266
302
|
"""
|
|
267
303
|
POST / HTTP/1.1
|
|
304
|
+
host: nex.toa.io
|
|
268
305
|
content-type: application/octet-stream
|
|
269
306
|
"""
|
|
270
307
|
Then the following reply is sent:
|
|
@@ -274,7 +311,8 @@ Feature: Octets storage workflows
|
|
|
274
311
|
When the following request is received:
|
|
275
312
|
"""
|
|
276
313
|
DELETE /10cf16b458f759e0d617f2f3d83599ff HTTP/1.1
|
|
277
|
-
|
|
314
|
+
host: nex.toa.io
|
|
315
|
+
accept: application/yaml, multipart/yaml
|
|
278
316
|
"""
|
|
279
317
|
Then the following reply is sent:
|
|
280
318
|
"""
|
|
@@ -282,6 +320,152 @@ Feature: Octets storage workflows
|
|
|
282
320
|
content-type: multipart/yaml; boundary=cut
|
|
283
321
|
|
|
284
322
|
--cut
|
|
285
|
-
|
|
323
|
+
|
|
324
|
+
step: echo
|
|
325
|
+
status: completed
|
|
326
|
+
output: 10cf16b458f759e0d617f2f3d83599ff
|
|
327
|
+
|
|
328
|
+
--cut--
|
|
329
|
+
"""
|
|
330
|
+
|
|
331
|
+
Scenario: Workflow with streaming response
|
|
332
|
+
Given the `octets.tester` is running
|
|
333
|
+
And the annotation:
|
|
334
|
+
"""yaml
|
|
335
|
+
/:
|
|
336
|
+
auth:anonymous: true
|
|
337
|
+
octets:context: octets
|
|
338
|
+
POST:
|
|
339
|
+
octets:put:
|
|
340
|
+
workflow:
|
|
341
|
+
- foo: octets.tester.foo
|
|
342
|
+
- yield: octets.tester.yield
|
|
343
|
+
"""
|
|
344
|
+
When the stream of `lenna.ascii` is received with the following headers:
|
|
345
|
+
"""
|
|
346
|
+
POST / HTTP/1.1
|
|
347
|
+
host: nex.toa.io
|
|
348
|
+
accept: application/yaml, multipart/yaml
|
|
349
|
+
content-type: application/octet-stream
|
|
350
|
+
"""
|
|
351
|
+
Then the following reply is sent:
|
|
352
|
+
"""
|
|
353
|
+
201 Created
|
|
354
|
+
content-type: multipart/yaml; boundary=cut
|
|
355
|
+
|
|
356
|
+
--cut
|
|
357
|
+
|
|
358
|
+
id: 10cf16b458f759e0d617f2f3d83599ff
|
|
359
|
+
type: application/octet-stream
|
|
360
|
+
|
|
361
|
+
--cut
|
|
362
|
+
|
|
363
|
+
step: foo
|
|
364
|
+
status: completed
|
|
365
|
+
|
|
366
|
+
--cut
|
|
367
|
+
|
|
368
|
+
step: yield
|
|
369
|
+
output: hello
|
|
370
|
+
|
|
371
|
+
--cut
|
|
372
|
+
|
|
373
|
+
step: yield
|
|
374
|
+
output: world
|
|
375
|
+
|
|
376
|
+
--cut
|
|
377
|
+
|
|
378
|
+
step: yield
|
|
379
|
+
status: completed
|
|
380
|
+
|
|
381
|
+
--cut--
|
|
382
|
+
"""
|
|
383
|
+
|
|
384
|
+
Scenario: Workflow with streaming response and an exception
|
|
385
|
+
Given the `octets.tester` is running
|
|
386
|
+
And the annotation:
|
|
387
|
+
"""yaml
|
|
388
|
+
/:
|
|
389
|
+
auth:anonymous: true
|
|
390
|
+
octets:context: octets
|
|
391
|
+
POST:
|
|
392
|
+
octets:put:
|
|
393
|
+
workflow:
|
|
394
|
+
yield: octets.tester.yex
|
|
395
|
+
"""
|
|
396
|
+
When the stream of `lenna.ascii` is received with the following headers:
|
|
397
|
+
"""
|
|
398
|
+
POST / HTTP/1.1
|
|
399
|
+
host: nex.toa.io
|
|
400
|
+
accept: application/yaml, multipart/yaml
|
|
401
|
+
content-type: application/octet-stream
|
|
402
|
+
"""
|
|
403
|
+
Then the following reply is sent:
|
|
404
|
+
"""
|
|
405
|
+
201 Created
|
|
406
|
+
content-type: multipart/yaml; boundary=cut
|
|
407
|
+
|
|
408
|
+
--cut
|
|
409
|
+
|
|
410
|
+
id: 10cf16b458f759e0d617f2f3d83599ff
|
|
411
|
+
type: application/octet-stream
|
|
412
|
+
|
|
413
|
+
--cut
|
|
414
|
+
|
|
415
|
+
step: yield
|
|
416
|
+
output: hello
|
|
417
|
+
|
|
418
|
+
--cut
|
|
419
|
+
|
|
420
|
+
step: yield
|
|
421
|
+
output: world
|
|
422
|
+
|
|
423
|
+
--cut
|
|
424
|
+
|
|
425
|
+
step: yield
|
|
426
|
+
status: exception
|
|
427
|
+
|
|
428
|
+
--cut--
|
|
429
|
+
"""
|
|
430
|
+
|
|
431
|
+
Scenario: Task workflow
|
|
432
|
+
Given the `octets.tester` is running
|
|
433
|
+
And the annotation:
|
|
434
|
+
"""yaml
|
|
435
|
+
/:
|
|
436
|
+
auth:anonymous: true
|
|
437
|
+
octets:context: octets
|
|
438
|
+
POST:
|
|
439
|
+
octets:put:
|
|
440
|
+
workflow:
|
|
441
|
+
foo: task:octets.tester.foo
|
|
442
|
+
/*:
|
|
443
|
+
io:output: true
|
|
444
|
+
GET:
|
|
445
|
+
octets:get:
|
|
446
|
+
meta: true
|
|
447
|
+
"""
|
|
448
|
+
When the stream of `lenna.ascii` is received with the following headers:
|
|
449
|
+
"""
|
|
450
|
+
POST / HTTP/1.1
|
|
451
|
+
host: nex.toa.io
|
|
452
|
+
accept: application/yaml, multipart/yaml
|
|
453
|
+
content-type: application/octet-stream
|
|
454
|
+
"""
|
|
455
|
+
Then the following reply is sent:
|
|
456
|
+
"""
|
|
457
|
+
201 Created
|
|
458
|
+
content-type: multipart/yaml; boundary=cut
|
|
459
|
+
|
|
460
|
+
--cut
|
|
461
|
+
|
|
462
|
+
id: 10cf16b458f759e0d617f2f3d83599ff
|
|
463
|
+
|
|
464
|
+
--cut
|
|
465
|
+
|
|
466
|
+
step: foo
|
|
467
|
+
status: completed
|
|
468
|
+
output: null
|
|
469
|
+
|
|
286
470
|
--cut--
|
|
287
471
|
"""
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
Feature: Probes
|
|
2
|
+
|
|
3
|
+
Scenario: Startup probe
|
|
4
|
+
Given the Gateway is running
|
|
5
|
+
And after 1 second
|
|
6
|
+
When the following request is received:
|
|
7
|
+
"""
|
|
8
|
+
GET /.ready HTTP/1.1
|
|
9
|
+
"""
|
|
10
|
+
Then the following reply is sent:
|
|
11
|
+
"""
|
|
12
|
+
200 OK
|
|
13
|
+
cache-control: no-store
|
|
14
|
+
"""
|
|
@@ -19,6 +19,7 @@ Feature: Queries
|
|
|
19
19
|
When the following request is received:
|
|
20
20
|
"""
|
|
21
21
|
GET /pots/pot/?id=99988d785d7d445cad45dbf8531f560b HTTP/1.1
|
|
22
|
+
host: nex.toa.io
|
|
22
23
|
accept: application/yaml
|
|
23
24
|
"""
|
|
24
25
|
Then the following reply is sent:
|
|
@@ -42,6 +43,7 @@ Feature: Queries
|
|
|
42
43
|
When the following request is received:
|
|
43
44
|
"""
|
|
44
45
|
GET /pots/?criteria=volume<300&limit=10 HTTP/1.1
|
|
46
|
+
host: nex.toa.io
|
|
45
47
|
accept: application/yaml
|
|
46
48
|
"""
|
|
47
49
|
Then the following reply is sent:
|
|
@@ -68,6 +70,7 @@ Feature: Queries
|
|
|
68
70
|
When the following request is received:
|
|
69
71
|
"""
|
|
70
72
|
GET /pots/?omit=1&limit=2 HTTP/1.1
|
|
73
|
+
host: nex.toa.io
|
|
71
74
|
accept: application/yaml
|
|
72
75
|
"""
|
|
73
76
|
Then the following reply is sent:
|
|
@@ -94,6 +97,7 @@ Feature: Queries
|
|
|
94
97
|
When the following request is received:
|
|
95
98
|
"""
|
|
96
99
|
GET /pots/?sort=volume:desc&limit=2 HTTP/1.1
|
|
100
|
+
host: nex.toa.io
|
|
97
101
|
accept: application/yaml
|
|
98
102
|
"""
|
|
99
103
|
Then the following reply is sent:
|
|
@@ -109,7 +113,7 @@ Feature: Queries
|
|
|
109
113
|
volume: 300
|
|
110
114
|
"""
|
|
111
115
|
|
|
112
|
-
Scenario: Request to a route with
|
|
116
|
+
Scenario: Request to a route with path variable
|
|
113
117
|
Given the `pots` is running with the following manifest:
|
|
114
118
|
"""yaml
|
|
115
119
|
exposition:
|
|
@@ -120,6 +124,7 @@ Feature: Queries
|
|
|
120
124
|
When the following request is received:
|
|
121
125
|
"""
|
|
122
126
|
GET /pots/99988d785d7d445cad45dbf8531f560b/ HTTP/1.1
|
|
127
|
+
host: nex.toa.io
|
|
123
128
|
accept: application/yaml
|
|
124
129
|
"""
|
|
125
130
|
Then the following reply is sent:
|
|
@@ -132,6 +137,37 @@ Feature: Queries
|
|
|
132
137
|
volume: 200
|
|
133
138
|
"""
|
|
134
139
|
|
|
140
|
+
Scenario: Request to a route with path variable using OR operator
|
|
141
|
+
Given the `pots` is running with the following manifest:
|
|
142
|
+
"""yaml
|
|
143
|
+
exposition:
|
|
144
|
+
/:volume:
|
|
145
|
+
io:output: true
|
|
146
|
+
GET:
|
|
147
|
+
query:
|
|
148
|
+
criteria: ',volume==100'
|
|
149
|
+
endpoint: enumerate
|
|
150
|
+
"""
|
|
151
|
+
When the following request is received:
|
|
152
|
+
"""
|
|
153
|
+
GET /pots/200/ HTTP/1.1
|
|
154
|
+
host: nex.toa.io
|
|
155
|
+
accept: application/yaml
|
|
156
|
+
"""
|
|
157
|
+
Then the following reply is sent:
|
|
158
|
+
"""
|
|
159
|
+
200 OK
|
|
160
|
+
content-type: application/yaml
|
|
161
|
+
|
|
162
|
+
- id: 4c4759e6f9c74da989d64511df42d6f4
|
|
163
|
+
title: First pot
|
|
164
|
+
volume: 100
|
|
165
|
+
temperature: 80
|
|
166
|
+
- id: 99988d785d7d445cad45dbf8531f560b
|
|
167
|
+
title: Second pot
|
|
168
|
+
volume: 200
|
|
169
|
+
"""
|
|
170
|
+
|
|
135
171
|
Scenario: Request to a route with predefined criteria
|
|
136
172
|
Given the `pots` is running with the following manifest:
|
|
137
173
|
"""yaml
|
|
@@ -146,6 +182,7 @@ Feature: Queries
|
|
|
146
182
|
When the following request is received:
|
|
147
183
|
"""
|
|
148
184
|
GET /pots/big/ HTTP/1.1
|
|
185
|
+
host: nex.toa.io
|
|
149
186
|
accept: application/yaml
|
|
150
187
|
"""
|
|
151
188
|
Then the following reply is sent:
|
|
@@ -161,7 +198,7 @@ Feature: Queries
|
|
|
161
198
|
volume: 400
|
|
162
199
|
"""
|
|
163
200
|
|
|
164
|
-
Scenario: Request to a route with
|
|
201
|
+
Scenario: Request to a route with open criteria
|
|
165
202
|
Given the `pots` is running with the following manifest:
|
|
166
203
|
"""yaml
|
|
167
204
|
exposition:
|
|
@@ -175,6 +212,7 @@ Feature: Queries
|
|
|
175
212
|
When the following request is received:
|
|
176
213
|
"""
|
|
177
214
|
GET /pots/big/?criteria=temperature>50 HTTP/1.1
|
|
215
|
+
host: nex.toa.io
|
|
178
216
|
accept: application/yaml
|
|
179
217
|
"""
|
|
180
218
|
Then the following reply is sent:
|
|
@@ -204,6 +242,7 @@ Feature: Queries
|
|
|
204
242
|
When the following request is received:
|
|
205
243
|
"""
|
|
206
244
|
GET /pots/hottest2/ HTTP/1.1
|
|
245
|
+
host: nex.toa.io
|
|
207
246
|
accept: application/yaml
|
|
208
247
|
"""
|
|
209
248
|
Then the following reply is sent:
|
|
@@ -220,3 +259,39 @@ Feature: Queries
|
|
|
220
259
|
volume: 100
|
|
221
260
|
temperature: 80
|
|
222
261
|
"""
|
|
262
|
+
|
|
263
|
+
Scenario: Query parameters
|
|
264
|
+
Given the `echo` is running with the following manifest:
|
|
265
|
+
"""yaml
|
|
266
|
+
exposition:
|
|
267
|
+
/:
|
|
268
|
+
GET:
|
|
269
|
+
io:output: true
|
|
270
|
+
query:
|
|
271
|
+
parameters: [name]
|
|
272
|
+
endpoint: compute
|
|
273
|
+
"""
|
|
274
|
+
When the following request is received:
|
|
275
|
+
"""
|
|
276
|
+
GET /echo/?name=John HTTP/1.1
|
|
277
|
+
host: nex.toa.io
|
|
278
|
+
accept: text/plain
|
|
279
|
+
"""
|
|
280
|
+
Then the following reply is sent:
|
|
281
|
+
"""
|
|
282
|
+
200 OK
|
|
283
|
+
|
|
284
|
+
Hello John
|
|
285
|
+
"""
|
|
286
|
+
When the following request is received:
|
|
287
|
+
"""
|
|
288
|
+
GET /echo/?foo=bar HTTP/1.1
|
|
289
|
+
host: nex.toa.io
|
|
290
|
+
accept: text/plain
|
|
291
|
+
"""
|
|
292
|
+
Then the following reply is sent:
|
|
293
|
+
"""
|
|
294
|
+
400 Bad Request
|
|
295
|
+
|
|
296
|
+
Query parameter 'foo' is not allowed
|
|
297
|
+
"""
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
Feature: Realtime events
|
|
2
|
+
|
|
3
|
+
Background:
|
|
4
|
+
Given the Realtime is running with the following annotation:
|
|
5
|
+
"""yaml
|
|
6
|
+
users.properties.sync: id
|
|
7
|
+
"""
|
|
8
|
+
And the identity Bob is consuming realtime events
|
|
9
|
+
|
|
10
|
+
Scenario: Getting realtime events
|
|
11
|
+
Given the `users.properties` is running with the following manifest:
|
|
12
|
+
"""yaml
|
|
13
|
+
exposition:
|
|
14
|
+
/:id:
|
|
15
|
+
anonymous: true
|
|
16
|
+
io:output: false
|
|
17
|
+
PATCH: transit
|
|
18
|
+
"""
|
|
19
|
+
When the following request is received:
|
|
20
|
+
"""
|
|
21
|
+
PATCH /users/properties/${{ Bob.id }}/ HTTP/1.1
|
|
22
|
+
host: nex.toa.io
|
|
23
|
+
content-type: application/yaml
|
|
24
|
+
|
|
25
|
+
newbie: false
|
|
26
|
+
"""
|
|
27
|
+
Then the following reply is sent:
|
|
28
|
+
"""
|
|
29
|
+
200 OK
|
|
30
|
+
"""
|
|
31
|
+
And the following event `users.properties.sync` is received by Bob:
|
|
32
|
+
"""yaml
|
|
33
|
+
newbie: false
|
|
34
|
+
"""
|