wrangler 0.0.0-e7a0cd5b → 0.0.0-e87ad068
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/README.md +3 -3
- package/bin/wrangler.js +30 -10
- package/miniflare-dist/index.mjs +254 -128
- package/package.json +27 -19
- package/src/__tests__/api-dev.test.ts +65 -36
- package/src/__tests__/api-devregistry.test.ts +121 -0
- package/src/__tests__/api.test.ts +27 -5
- package/src/__tests__/configuration.test.ts +797 -98
- package/src/__tests__/constellation.test.ts +371 -0
- package/src/__tests__/d1/d1.test.ts +82 -0
- package/src/__tests__/d1/execute.test.ts +66 -0
- package/src/__tests__/d1/migrate.test.ts +257 -0
- package/src/__tests__/d1/splitter.test.ts +255 -0
- package/src/__tests__/delete.test.ts +91 -49
- package/src/__tests__/deployments.test.ts +330 -56
- package/src/__tests__/dev.test.tsx +198 -90
- package/src/__tests__/generate.test.ts +12 -10
- package/src/__tests__/guess-worker-format.test.ts +35 -0
- package/src/__tests__/helpers/end-event-loop.ts +6 -0
- package/src/__tests__/helpers/mock-auth-domain.ts +20 -0
- package/src/__tests__/helpers/mock-console.ts +6 -0
- package/src/__tests__/helpers/mock-dialogs.ts +71 -85
- package/src/__tests__/helpers/mock-get-pages-upload-token.ts +25 -0
- package/src/__tests__/helpers/mock-get-zone-from-host.ts +8 -5
- package/src/__tests__/helpers/mock-known-routes.ts +7 -2
- package/src/__tests__/helpers/mock-kv.ts +29 -16
- package/src/__tests__/helpers/mock-oauth-flow.ts +103 -92
- package/src/__tests__/helpers/mock-process.ts +8 -13
- package/src/__tests__/helpers/mock-set-timeout.ts +16 -0
- package/src/__tests__/helpers/msw/blob-worker.cjs +19 -0
- package/src/__tests__/helpers/msw/handlers/deployments.ts +128 -27
- package/src/__tests__/helpers/msw/handlers/namespaces.ts +18 -41
- package/src/__tests__/helpers/msw/handlers/oauth.ts +13 -18
- package/src/__tests__/helpers/msw/handlers/r2.ts +14 -34
- package/src/__tests__/helpers/msw/handlers/script.ts +9 -28
- package/src/__tests__/helpers/msw/handlers/user.ts +13 -24
- package/src/__tests__/helpers/msw/handlers/zones.ts +6 -8
- package/src/__tests__/helpers/msw/index.ts +32 -1
- package/src/__tests__/helpers/msw/read-file-sync.js +61 -0
- package/src/__tests__/helpers/string-dynamic-values-matcher.ts +28 -0
- package/src/__tests__/helpers/worker-scripts/parent-worker.js +4 -1
- package/src/__tests__/index.test.ts +92 -72
- package/src/__tests__/init.test.ts +1033 -631
- package/src/__tests__/jest.setup.ts +19 -42
- package/src/__tests__/kv.test.ts +355 -231
- package/src/__tests__/logger.test.ts +68 -2
- package/src/__tests__/logout.test.ts +47 -0
- package/src/__tests__/metrics.test.ts +94 -51
- package/src/__tests__/middleware.scheduled.test.ts +42 -32
- package/src/__tests__/middleware.test.ts +212 -122
- package/src/__tests__/mtls-certificates.test.ts +589 -0
- package/src/__tests__/pages/deployment-list.test.ts +80 -0
- package/src/__tests__/pages/functions-build.test.ts +529 -0
- package/src/__tests__/pages/pages.test.ts +81 -0
- package/src/__tests__/pages/project-create.test.ts +63 -0
- package/src/__tests__/pages/project-list.test.ts +110 -0
- package/src/__tests__/pages/project-upload.test.ts +500 -0
- package/src/__tests__/pages/publish.test.ts +2864 -0
- package/src/__tests__/pages-deployment-tail.test.ts +957 -0
- package/src/__tests__/parse.test.ts +106 -0
- package/src/__tests__/publish.test.ts +2227 -1005
- package/src/__tests__/pubsub.test.ts +226 -100
- package/src/__tests__/queues.test.ts +238 -77
- package/src/__tests__/r2.test.ts +55 -57
- package/src/__tests__/secret.test.ts +179 -130
- package/src/__tests__/tail.test.ts +313 -113
- package/src/__tests__/test-old-node-version.js +3 -3
- package/src/__tests__/traverse-module-graph.test.ts +220 -0
- package/src/__tests__/tsconfig-sanity.ts +12 -0
- package/src/__tests__/tsconfig.json +8 -0
- package/src/__tests__/tsconfig.tsbuildinfo +1 -0
- package/src/__tests__/type-generation.test.ts +43 -26
- package/src/__tests__/unstableDev.test.ts +61 -0
- package/src/__tests__/user.test.ts +35 -72
- package/src/__tests__/whoami.test.tsx +8 -114
- package/src/__tests__/worker-namespace.test.ts +83 -69
- package/src/api/dev.ts +180 -60
- package/src/api/index.ts +10 -1
- package/src/api/mtls-certificate.ts +148 -0
- package/src/api/pages/create-worker-bundle-contents.ts +80 -0
- package/src/api/pages/index.ts +5 -0
- package/src/api/pages/publish.tsx +371 -0
- package/src/bundle.ts +315 -148
- package/src/cfetch/index.ts +0 -2
- package/src/cfetch/internal.ts +33 -33
- package/src/cli.ts +4 -4
- package/src/config/config.ts +14 -7
- package/src/config/environment.ts +120 -24
- package/src/config/index.ts +117 -35
- package/src/config/validation-helpers.ts +1 -1
- package/src/config/validation.ts +430 -19
- package/src/constellation/createProject.tsx +51 -0
- package/src/constellation/deleteProject.ts +51 -0
- package/src/constellation/deleteProjectModel.ts +76 -0
- package/src/constellation/index.ts +75 -0
- package/src/constellation/listCatalog.tsx +35 -0
- package/src/constellation/listModel.tsx +49 -0
- package/src/constellation/listProject.tsx +28 -0
- package/src/constellation/listRuntime.tsx +28 -0
- package/src/constellation/options.ts +17 -0
- package/src/constellation/types.ts +17 -0
- package/src/constellation/uploadModel.tsx +84 -0
- package/src/constellation/utils.ts +90 -0
- package/src/create-worker-preview.ts +19 -8
- package/src/create-worker-upload-form.ts +81 -18
- package/src/d1/backups.tsx +47 -46
- package/src/d1/constants.ts +5 -0
- package/src/d1/create.tsx +85 -37
- package/src/d1/{delete.tsx → delete.ts} +12 -15
- package/src/d1/execute.tsx +228 -156
- package/src/d1/index.ts +31 -7
- package/src/d1/list.tsx +27 -13
- package/src/d1/migrations/apply.tsx +235 -0
- package/src/d1/migrations/create.tsx +79 -0
- package/src/d1/migrations/helpers.ts +171 -0
- package/src/d1/migrations/index.ts +3 -0
- package/src/d1/migrations/list.tsx +95 -0
- package/src/d1/migrations/options.ts +23 -0
- package/src/d1/options.ts +12 -2
- package/src/d1/splitter.ts +161 -0
- package/src/d1/types.ts +32 -0
- package/src/d1/utils.ts +12 -2
- package/src/delete.ts +8 -16
- package/src/deployments.ts +340 -46
- package/src/deprecated/index.ts +8 -302
- package/src/dev/dev.tsx +66 -46
- package/src/dev/local.tsx +339 -104
- package/src/dev/remote.tsx +36 -3
- package/src/dev/start-server.ts +146 -101
- package/src/dev/use-esbuild.ts +82 -56
- package/src/dev/validate-dev-props.ts +9 -0
- package/src/{dev-registry.tsx → dev-registry.ts} +13 -1
- package/src/dev.tsx +202 -125
- package/src/dialogs.ts +136 -0
- package/src/dispatch-namespace.ts +21 -17
- package/src/docs/helpers.ts +50 -0
- package/src/docs/index.ts +54 -0
- package/src/entry.ts +26 -11
- package/src/environment-variables/factory.ts +89 -0
- package/src/environment-variables/misc-variables.ts +30 -0
- package/src/generate/index.ts +303 -0
- package/src/git-client.ts +15 -4
- package/src/{index.tsx → index.ts} +148 -63
- package/src/init.ts +301 -197
- package/src/inspect.ts +122 -6
- package/src/jest.d.ts +4 -0
- package/src/kv/helpers.ts +7 -4
- package/src/kv/index.ts +15 -17
- package/src/logger.ts +36 -5
- package/src/metrics/metrics-config.ts +3 -3
- package/src/metrics/send-event.ts +6 -1
- package/src/miniflare-cli/assets.ts +64 -28
- package/src/miniflare-cli/index.ts +6 -9
- package/src/miniflare-cli/tsconfig.json +9 -0
- package/src/miniflare-cli/tsconfig.tsbuildinfo +1 -0
- package/src/miniflare-cli/types.ts +11 -0
- package/src/module-collection.ts +92 -26
- package/src/mtls-certificate/cli.ts +155 -0
- package/src/pages/build.ts +423 -0
- package/src/pages/buildFunctions.ts +140 -0
- package/src/pages/deployment-tails.ts +281 -0
- package/src/pages/deployments.tsx +11 -33
- package/src/pages/{dev.tsx → dev.ts} +192 -126
- package/src/pages/errors.ts +1 -0
- package/src/pages/functions/buildPlugin.ts +73 -69
- package/src/pages/functions/buildWorker.ts +342 -117
- package/src/pages/functions/tsconfig.json +8 -0
- package/src/pages/functions/tsconfig.tsbuildinfo +1 -0
- package/src/pages/{functions.tsx → functions.ts} +8 -4
- package/src/pages/{index.tsx → index.ts} +11 -3
- package/src/pages/projects.tsx +12 -22
- package/src/pages/prompt-select-project.tsx +31 -0
- package/src/pages/publish.tsx +45 -214
- package/src/pages/types.ts +6 -9
- package/src/pages/upload.tsx +58 -14
- package/src/pages/utils.ts +14 -3
- package/src/parse.ts +23 -1
- package/src/paths.ts +1 -1
- package/src/proxy.ts +5 -0
- package/src/publish/index.ts +20 -16
- package/src/publish/publish.ts +81 -48
- package/src/pubsub/{pubsub-commands.tsx → pubsub-commands.ts} +19 -20
- package/src/queues/cli/commands/consumer/add.ts +24 -24
- package/src/queues/cli/commands/consumer/index.ts +3 -6
- package/src/queues/cli/commands/consumer/remove.ts +11 -18
- package/src/queues/cli/commands/create.ts +8 -8
- package/src/queues/cli/commands/delete.ts +8 -8
- package/src/queues/cli/commands/index.ts +6 -4
- package/src/queues/cli/commands/list.ts +8 -8
- package/src/queues/client.ts +1 -0
- package/src/queues/utils.ts +18 -0
- package/src/r2/constants.ts +4 -0
- package/src/r2/helpers.ts +1 -0
- package/src/r2/index.ts +40 -28
- package/src/secret/index.ts +18 -17
- package/src/{sites.tsx → sites.ts} +165 -53
- package/src/tail/createTail.ts +103 -3
- package/src/tail/filters.ts +1 -1
- package/src/tail/index.ts +8 -11
- package/src/tail/printing.ts +27 -0
- package/src/traverse-module-graph.ts +54 -0
- package/src/tsconfig-sanity.ts +16 -0
- package/src/type-generation.ts +85 -57
- package/src/user/access.ts +0 -1
- package/src/user/auth-variables.ts +113 -0
- package/src/user/choose-account.tsx +1 -31
- package/src/user/index.ts +0 -1
- package/src/user/{user.tsx → user.ts} +124 -82
- package/src/utils/render.ts +93 -0
- package/src/{whoami.tsx → whoami.ts} +37 -71
- package/src/worker.ts +61 -3
- package/src/yargs-types.ts +22 -5
- package/templates/__tests__/tsconfig-sanity.ts +12 -0
- package/templates/__tests__/tsconfig.json +8 -0
- package/templates/__tests__/tsconfig.tsbuildinfo +1 -0
- package/templates/checked-fetch.js +9 -3
- package/templates/d1-beta-facade.js +95 -25
- package/templates/facade.d.ts +14 -0
- package/templates/first-party-worker-module-facade.ts +4 -3
- package/templates/format-dev-errors.ts +8 -6
- package/templates/gitignore +1 -0
- package/templates/init-tests/test-jest-new-worker.js +3 -5
- package/templates/init-tests/test-vitest-new-worker.js +3 -5
- package/templates/init-tests/test-vitest-new-worker.ts +25 -0
- package/templates/middleware/loader-modules.ts +2 -2
- package/templates/middleware/loader-sw.ts +51 -31
- package/templates/middleware/middleware-miniflare3-json-error.ts +32 -0
- package/templates/new-worker.ts +3 -0
- package/templates/pages-dev-pipeline.ts +4 -1
- package/templates/pages-dev-util.ts +4 -1
- package/templates/pages-shim.ts +4 -1
- package/templates/pages-template-plugin.ts +19 -10
- package/templates/serve-static-assets.ts +17 -14
- package/templates/service-bindings-module-facade.js +1 -0
- package/templates/tsconfig-sanity.ts +11 -0
- package/templates/tsconfig.init.json +105 -0
- package/templates/tsconfig.json +5 -103
- package/templates/tsconfig.tsbuildinfo +1 -0
- package/wrangler-dist/cli.d.ts +902 -77
- package/wrangler-dist/cli.js +131685 -140615
- package/wrangler-dist/wasm-sync.wasm +0 -0
- package/src/__tests__/api-devregistry.test.js +0 -57
- package/src/__tests__/d1.test.ts +0 -72
- package/src/__tests__/dialogs.test.tsx +0 -40
- package/src/__tests__/helpers/mock-cfetch.ts +0 -333
- package/src/__tests__/pages.test.ts +0 -2223
- package/src/d1/types.tsx +0 -14
- package/src/dialogs.tsx +0 -163
- package/src/environment-variables.ts +0 -50
- package/src/pages/build.tsx +0 -238
- package/src/user/env-vars.ts +0 -46
- package/templates/experimental-local-cache-stubs.js +0 -27
- /package/src/{bundle-reporter.tsx → bundle-reporter.ts} +0 -0
- /package/src/dev/{get-local-persistence-path.tsx → get-local-persistence-path.ts} +0 -0
- /package/src/pages/{hash.tsx → hash.ts} +0 -0
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { rest } from "msw";
|
|
1
2
|
import { mockAccountId, mockApiToken } from "./helpers/mock-account-id";
|
|
2
|
-
import { setMockResponse, unsetAllMocks } from "./helpers/mock-cfetch";
|
|
3
3
|
import { mockConsoleMethods } from "./helpers/mock-console";
|
|
4
|
+
import { msw } from "./helpers/msw";
|
|
4
5
|
import { runInTempDir } from "./helpers/run-in-tmp";
|
|
5
6
|
import { runWrangler } from "./helpers/run-wrangler";
|
|
6
7
|
import type {
|
|
@@ -16,10 +17,6 @@ describe("wrangler", () => {
|
|
|
16
17
|
runInTempDir();
|
|
17
18
|
const std = mockConsoleMethods();
|
|
18
19
|
|
|
19
|
-
afterEach(() => {
|
|
20
|
-
unsetAllMocks();
|
|
21
|
-
});
|
|
22
|
-
|
|
23
20
|
describe("pubsub", () => {
|
|
24
21
|
describe("help menu", () => {
|
|
25
22
|
it("shows usage details", async () => {
|
|
@@ -28,6 +25,7 @@ describe("wrangler", () => {
|
|
|
28
25
|
Object {
|
|
29
26
|
"debug": "",
|
|
30
27
|
"err": "",
|
|
28
|
+
"info": "",
|
|
31
29
|
"out": "wrangler pubsub
|
|
32
30
|
|
|
33
31
|
📮 Interact and manage Pub/Sub Brokers
|
|
@@ -37,10 +35,11 @@ describe("wrangler", () => {
|
|
|
37
35
|
wrangler pubsub broker Interact with your Pub/Sub Brokers
|
|
38
36
|
|
|
39
37
|
Flags:
|
|
40
|
-
-
|
|
41
|
-
-
|
|
42
|
-
-
|
|
43
|
-
-
|
|
38
|
+
-j, --experimental-json-config Experimental: Support wrangler.json [boolean]
|
|
39
|
+
-c, --config Path to .toml configuration file [string]
|
|
40
|
+
-e, --env Environment to use for operations and .env files [string]
|
|
41
|
+
-h, --help Show help [boolean]
|
|
42
|
+
-v, --version Show version number [boolean]
|
|
44
43
|
|
|
45
44
|
👷🏽 'wrangler pubsub ...' commands are currently in private beta. If your account isn't authorized, commands will fail. Visit the Pub/Sub docs for more info: https://developers.cloudflare.com/pub-sub/",
|
|
46
45
|
"warn": "",
|
|
@@ -57,6 +56,7 @@ describe("wrangler", () => {
|
|
|
57
56
|
Object {
|
|
58
57
|
"debug": "",
|
|
59
58
|
"err": "",
|
|
59
|
+
"info": "",
|
|
60
60
|
"out": "wrangler pubsub namespace
|
|
61
61
|
|
|
62
62
|
Manage your Pub/Sub Namespaces
|
|
@@ -68,10 +68,11 @@ describe("wrangler", () => {
|
|
|
68
68
|
wrangler pubsub namespace describe <name> Describe a Pub/Sub Namespace
|
|
69
69
|
|
|
70
70
|
Flags:
|
|
71
|
-
-
|
|
72
|
-
-
|
|
73
|
-
-
|
|
74
|
-
-
|
|
71
|
+
-j, --experimental-json-config Experimental: Support wrangler.json [boolean]
|
|
72
|
+
-c, --config Path to .toml configuration file [string]
|
|
73
|
+
-e, --env Environment to use for operations and .env files [string]
|
|
74
|
+
-h, --help Show help [boolean]
|
|
75
|
+
-v, --version Show version number [boolean]
|
|
75
76
|
|
|
76
77
|
👷🏽 'wrangler pubsub ...' commands are currently in private beta. If your account isn't authorized, commands will fail. Visit the Pub/Sub docs for more info: https://developers.cloudflare.com/pub-sub/",
|
|
77
78
|
"warn": "",
|
|
@@ -83,15 +84,30 @@ describe("wrangler", () => {
|
|
|
83
84
|
describe("create", () => {
|
|
84
85
|
function mockCreateRequest(expectedNamespaceName: string) {
|
|
85
86
|
const requests = { count: 0 };
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
87
|
+
msw.use(
|
|
88
|
+
rest.post(
|
|
89
|
+
"*/accounts/:accountId/pubsub/namespaces",
|
|
90
|
+
async (req, res, ctx) => {
|
|
91
|
+
expect(req.params.accountId).toEqual("some-account-id");
|
|
92
|
+
const namespace = await req.json();
|
|
93
|
+
expect(namespace.name).toEqual(expectedNamespaceName);
|
|
94
|
+
requests.count++;
|
|
95
|
+
return res.once(
|
|
96
|
+
ctx.status(200),
|
|
97
|
+
ctx.json({
|
|
98
|
+
success: true,
|
|
99
|
+
errors: [],
|
|
100
|
+
messages: [],
|
|
101
|
+
result: {
|
|
102
|
+
id: "some-namespace-id",
|
|
103
|
+
name: namespace.name,
|
|
104
|
+
created_at: "3005-01-01T00:00:00.000000Z",
|
|
105
|
+
updated_at: "3005-01-01T00:00:00.000000Z",
|
|
106
|
+
},
|
|
107
|
+
})
|
|
108
|
+
);
|
|
109
|
+
}
|
|
110
|
+
)
|
|
95
111
|
);
|
|
96
112
|
return requests;
|
|
97
113
|
}
|
|
@@ -107,14 +123,24 @@ describe("wrangler", () => {
|
|
|
107
123
|
describe("list", () => {
|
|
108
124
|
function mockListRequest(namespaces: PubSubNamespace[]) {
|
|
109
125
|
const requests = { count: 0 };
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
126
|
+
msw.use(
|
|
127
|
+
rest.get(
|
|
128
|
+
"*/accounts/:accountId/pubsub/namespaces",
|
|
129
|
+
async (req, res, ctx) => {
|
|
130
|
+
requests.count++;
|
|
131
|
+
expect(req.params.accountId).toEqual("some-account-id");
|
|
132
|
+
|
|
133
|
+
return res.once(
|
|
134
|
+
ctx.status(200),
|
|
135
|
+
ctx.json({
|
|
136
|
+
success: true,
|
|
137
|
+
errors: [],
|
|
138
|
+
messages: [],
|
|
139
|
+
result: namespaces,
|
|
140
|
+
})
|
|
141
|
+
);
|
|
142
|
+
}
|
|
143
|
+
)
|
|
118
144
|
);
|
|
119
145
|
return requests;
|
|
120
146
|
}
|
|
@@ -128,7 +154,12 @@ describe("wrangler", () => {
|
|
|
128
154
|
await runWrangler("pubsub namespace list");
|
|
129
155
|
|
|
130
156
|
expect(std.err).toMatchInlineSnapshot(`""`);
|
|
131
|
-
|
|
157
|
+
expect(std.out).toMatchInlineSnapshot(`
|
|
158
|
+
"[
|
|
159
|
+
{ name: 'namespace-1', created_on: '01-01-2001' },
|
|
160
|
+
{ name: 'namespace-2', created_on: '01-01-2001' }
|
|
161
|
+
]"
|
|
162
|
+
`);
|
|
132
163
|
expect(requests.count).toEqual(1);
|
|
133
164
|
});
|
|
134
165
|
});
|
|
@@ -142,6 +173,7 @@ describe("wrangler", () => {
|
|
|
142
173
|
Object {
|
|
143
174
|
"debug": "",
|
|
144
175
|
"err": "",
|
|
176
|
+
"info": "",
|
|
145
177
|
"out": "wrangler pubsub broker
|
|
146
178
|
|
|
147
179
|
Interact with your Pub/Sub Brokers
|
|
@@ -159,10 +191,11 @@ describe("wrangler", () => {
|
|
|
159
191
|
wrangler pubsub broker public-keys <name> Show the public keys used for verifying on-publish hooks and credentials for a Broker.
|
|
160
192
|
|
|
161
193
|
Flags:
|
|
162
|
-
-
|
|
163
|
-
-
|
|
164
|
-
-
|
|
165
|
-
-
|
|
194
|
+
-j, --experimental-json-config Experimental: Support wrangler.json [boolean]
|
|
195
|
+
-c, --config Path to .toml configuration file [string]
|
|
196
|
+
-e, --env Environment to use for operations and .env files [string]
|
|
197
|
+
-h, --help Show help [boolean]
|
|
198
|
+
-v, --version Show version number [boolean]
|
|
166
199
|
|
|
167
200
|
👷🏽 'wrangler pubsub ...' commands are currently in private beta. If your account isn't authorized, commands will fail. Visit the Pub/Sub docs for more info: https://developers.cloudflare.com/pub-sub/",
|
|
168
201
|
"warn": "",
|
|
@@ -174,16 +207,29 @@ describe("wrangler", () => {
|
|
|
174
207
|
describe("create", () => {
|
|
175
208
|
function mockCreateRequest(expectedBrokerName: string) {
|
|
176
209
|
const requests = { count: 0 };
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
210
|
+
msw.use(
|
|
211
|
+
rest.post(
|
|
212
|
+
"*/accounts/:accountId/pubsub/namespaces/:namespaceName/brokers",
|
|
213
|
+
async (req, res, ctx) => {
|
|
214
|
+
expect(req.params.accountId).toEqual("some-account-id");
|
|
215
|
+
expect(req.params.namespaceName).toEqual("some-namespace");
|
|
216
|
+
const broker = await req.json();
|
|
217
|
+
expect(broker.name).toEqual(expectedBrokerName);
|
|
218
|
+
requests.count++;
|
|
219
|
+
return res.once(
|
|
220
|
+
ctx.status(200),
|
|
221
|
+
ctx.json({
|
|
222
|
+
success: true,
|
|
223
|
+
errors: [],
|
|
224
|
+
messages: [],
|
|
225
|
+
result: {
|
|
226
|
+
name: expectedBrokerName,
|
|
227
|
+
created_on: "01-01-2001",
|
|
228
|
+
},
|
|
229
|
+
})
|
|
230
|
+
);
|
|
231
|
+
}
|
|
232
|
+
)
|
|
187
233
|
);
|
|
188
234
|
return requests;
|
|
189
235
|
}
|
|
@@ -194,7 +240,10 @@ describe("wrangler", () => {
|
|
|
194
240
|
"pubsub broker create my-broker --namespace=some-namespace"
|
|
195
241
|
);
|
|
196
242
|
|
|
197
|
-
|
|
243
|
+
expect(std.err).toMatchInlineSnapshot(`""`);
|
|
244
|
+
expect(std.out).toMatchInlineSnapshot(
|
|
245
|
+
`"{ name: 'my-broker', created_on: '01-01-2001' }"`
|
|
246
|
+
);
|
|
198
247
|
expect(requests.count).toEqual(1);
|
|
199
248
|
});
|
|
200
249
|
|
|
@@ -215,21 +264,34 @@ describe("wrangler", () => {
|
|
|
215
264
|
expectedOnPublishConfig: PubSubBrokerOnPublish
|
|
216
265
|
) {
|
|
217
266
|
const requests = { count: 0 };
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
267
|
+
msw.use(
|
|
268
|
+
rest.patch(
|
|
269
|
+
"*/accounts/:accountId/pubsub/namespaces/:namespaceName/brokers/:brokerName",
|
|
270
|
+
async (req, res, cxt) => {
|
|
271
|
+
requests.count += 1;
|
|
272
|
+
expect(req.params.accountId).toEqual("some-account-id");
|
|
273
|
+
expect(req.params.namespaceName).toEqual("some-namespace");
|
|
274
|
+
expect(req.params.brokerName).toEqual(expectedBrokerName);
|
|
275
|
+
|
|
276
|
+
const patchBody: PubSubBrokerUpdate = await req.json();
|
|
277
|
+
|
|
278
|
+
expect(patchBody.expiration).toEqual(expectedExpiration);
|
|
279
|
+
expect(patchBody.description).toEqual(expectedDescription);
|
|
280
|
+
expect(patchBody.on_publish).toEqual(expectedOnPublishConfig);
|
|
281
|
+
return res.once(
|
|
282
|
+
cxt.status(200),
|
|
283
|
+
cxt.json({
|
|
284
|
+
success: true,
|
|
285
|
+
errors: [],
|
|
286
|
+
messages: [],
|
|
287
|
+
result: {
|
|
288
|
+
name: expectedBrokerName,
|
|
289
|
+
created_on: "01-01-2001",
|
|
290
|
+
},
|
|
291
|
+
})
|
|
292
|
+
);
|
|
293
|
+
}
|
|
294
|
+
)
|
|
233
295
|
);
|
|
234
296
|
return requests;
|
|
235
297
|
}
|
|
@@ -249,7 +311,10 @@ describe("wrangler", () => {
|
|
|
249
311
|
);
|
|
250
312
|
|
|
251
313
|
expect(std.err).toMatchInlineSnapshot(`""`);
|
|
252
|
-
|
|
314
|
+
expect(std.out).toMatchInlineSnapshot(`
|
|
315
|
+
"{ name: 'my-broker', created_on: '01-01-2001' }
|
|
316
|
+
Successfully updated Pub/Sub Broker my-broker"
|
|
317
|
+
`);
|
|
253
318
|
expect(requests.count).toEqual(1);
|
|
254
319
|
});
|
|
255
320
|
});
|
|
@@ -257,15 +322,24 @@ describe("wrangler", () => {
|
|
|
257
322
|
describe("list", () => {
|
|
258
323
|
function mockListRequest(brokers: PubSubBroker[]) {
|
|
259
324
|
const requests = { count: 0 };
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
325
|
+
msw.use(
|
|
326
|
+
rest.get(
|
|
327
|
+
"*/accounts/:accountId/pubsub/namespaces/:namespaceName/brokers",
|
|
328
|
+
async (req, res, cxt) => {
|
|
329
|
+
requests.count++;
|
|
330
|
+
expect(req.params.accountId).toEqual("some-account-id");
|
|
331
|
+
expect(req.params.namespaceName).toEqual("some-namespace");
|
|
332
|
+
return res.once(
|
|
333
|
+
cxt.status(200),
|
|
334
|
+
cxt.json({
|
|
335
|
+
success: true,
|
|
336
|
+
errors: [],
|
|
337
|
+
messages: [],
|
|
338
|
+
result: brokers,
|
|
339
|
+
})
|
|
340
|
+
);
|
|
341
|
+
}
|
|
342
|
+
)
|
|
269
343
|
);
|
|
270
344
|
return requests;
|
|
271
345
|
}
|
|
@@ -279,7 +353,12 @@ describe("wrangler", () => {
|
|
|
279
353
|
await runWrangler("pubsub broker list --namespace=some-namespace");
|
|
280
354
|
|
|
281
355
|
expect(std.err).toMatchInlineSnapshot(`""`);
|
|
282
|
-
|
|
356
|
+
expect(std.out).toMatchInlineSnapshot(`
|
|
357
|
+
"[
|
|
358
|
+
{ name: 'broker-1', created_on: '01-01-2001' },
|
|
359
|
+
{ name: 'broker-2', created_on: '01-01-2001' }
|
|
360
|
+
]"
|
|
361
|
+
`);
|
|
283
362
|
expect(requests.count).toEqual(1);
|
|
284
363
|
});
|
|
285
364
|
});
|
|
@@ -287,15 +366,25 @@ describe("wrangler", () => {
|
|
|
287
366
|
describe("describe", () => {
|
|
288
367
|
function mockGetRequest(broker: PubSubBroker) {
|
|
289
368
|
const requests = { count: 0 };
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
369
|
+
msw.use(
|
|
370
|
+
rest.get(
|
|
371
|
+
"*/accounts/:accountId/pubsub/namespaces/:namespaceName/brokers/:brokerName",
|
|
372
|
+
(req, res, cxt) => {
|
|
373
|
+
requests.count++;
|
|
374
|
+
expect(req.params.accountId).toEqual("some-account-id");
|
|
375
|
+
expect(req.params.namespaceName).toEqual("some-namespace");
|
|
376
|
+
expect(req.params.brokerName).toEqual(broker.name);
|
|
377
|
+
return res.once(
|
|
378
|
+
cxt.status(200),
|
|
379
|
+
cxt.json({
|
|
380
|
+
success: true,
|
|
381
|
+
errors: [],
|
|
382
|
+
messages: [],
|
|
383
|
+
result: broker,
|
|
384
|
+
})
|
|
385
|
+
);
|
|
386
|
+
}
|
|
387
|
+
)
|
|
299
388
|
);
|
|
300
389
|
return requests;
|
|
301
390
|
}
|
|
@@ -307,7 +396,9 @@ describe("wrangler", () => {
|
|
|
307
396
|
);
|
|
308
397
|
|
|
309
398
|
expect(std.err).toMatchInlineSnapshot(`""`);
|
|
310
|
-
|
|
399
|
+
expect(std.out).toMatchInlineSnapshot(
|
|
400
|
+
`"{ id: '1234', name: 'my-broker' }"`
|
|
401
|
+
);
|
|
311
402
|
expect(requests.count).toEqual(1);
|
|
312
403
|
});
|
|
313
404
|
});
|
|
@@ -315,14 +406,28 @@ describe("wrangler", () => {
|
|
|
315
406
|
describe("issue", () => {
|
|
316
407
|
function mockIssueRequest(expectedBrokerName: string) {
|
|
317
408
|
const requests = { count: 0 };
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
409
|
+
msw.use(
|
|
410
|
+
rest.get(
|
|
411
|
+
"*/accounts/:accountId/pubsub/namespaces/:namespaceName/brokers/:brokerName/credentials",
|
|
412
|
+
(req, res, cxt) => {
|
|
413
|
+
requests.count++;
|
|
414
|
+
expect(req.params.accountId).toEqual("some-account-id");
|
|
415
|
+
expect(req.params.namespaceName).toEqual("some-namespace");
|
|
416
|
+
expect(req.params.brokerName).toEqual(expectedBrokerName);
|
|
417
|
+
return res.once(
|
|
418
|
+
cxt.status(200),
|
|
419
|
+
cxt.json({
|
|
420
|
+
success: true,
|
|
421
|
+
errors: [],
|
|
422
|
+
messages: [],
|
|
423
|
+
result: {
|
|
424
|
+
"MOCK-89T6DXG3SVG1WQRA": `<base-64-encoded-JWT>`,
|
|
425
|
+
"MOCK-393REE4WRRE4NHAV96": `<base-64-encoded-JWT>`,
|
|
426
|
+
},
|
|
427
|
+
})
|
|
428
|
+
);
|
|
429
|
+
}
|
|
430
|
+
)
|
|
326
431
|
);
|
|
327
432
|
return requests;
|
|
328
433
|
}
|
|
@@ -334,7 +439,13 @@ describe("wrangler", () => {
|
|
|
334
439
|
);
|
|
335
440
|
|
|
336
441
|
expect(std.err).toMatchInlineSnapshot(`""`);
|
|
337
|
-
|
|
442
|
+
expect(std.out).toMatchInlineSnapshot(`
|
|
443
|
+
"🔑 Issuing credential(s) for my-broker.some-namespace...
|
|
444
|
+
{
|
|
445
|
+
'MOCK-89T6DXG3SVG1WQRA': '<base-64-encoded-JWT>',
|
|
446
|
+
'MOCK-393REE4WRRE4NHAV96': '<base-64-encoded-JWT>'
|
|
447
|
+
}"
|
|
448
|
+
`);
|
|
338
449
|
expect(requests.count).toEqual(1);
|
|
339
450
|
});
|
|
340
451
|
});
|
|
@@ -342,14 +453,27 @@ describe("wrangler", () => {
|
|
|
342
453
|
describe("public-keys", () => {
|
|
343
454
|
function mockIssueRequest(expectedBrokerName: string) {
|
|
344
455
|
const requests = { count: 0 };
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
456
|
+
msw.use(
|
|
457
|
+
rest.get(
|
|
458
|
+
"*/accounts/:accountId/pubsub/namespaces/:namespaceName/brokers/:brokerName/publickeys",
|
|
459
|
+
(req, res, cxt) => {
|
|
460
|
+
requests.count++;
|
|
461
|
+
expect(req.params.accountId).toEqual("some-account-id");
|
|
462
|
+
expect(req.params.namespaceName).toEqual("some-namespace");
|
|
463
|
+
expect(req.params.brokerName).toEqual(expectedBrokerName);
|
|
464
|
+
return res.once(
|
|
465
|
+
cxt.status(200),
|
|
466
|
+
cxt.json({
|
|
467
|
+
success: true,
|
|
468
|
+
errors: [],
|
|
469
|
+
messages: [],
|
|
470
|
+
result: {
|
|
471
|
+
public_keys: "Mock-Public-Key",
|
|
472
|
+
},
|
|
473
|
+
})
|
|
474
|
+
);
|
|
475
|
+
}
|
|
476
|
+
)
|
|
353
477
|
);
|
|
354
478
|
return requests;
|
|
355
479
|
}
|
|
@@ -361,7 +485,9 @@ describe("wrangler", () => {
|
|
|
361
485
|
);
|
|
362
486
|
|
|
363
487
|
expect(std.err).toMatchInlineSnapshot(`""`);
|
|
364
|
-
|
|
488
|
+
expect(std.out).toMatchInlineSnapshot(
|
|
489
|
+
`"{ public_keys: 'Mock-Public-Key' }"`
|
|
490
|
+
);
|
|
365
491
|
expect(requests.count).toEqual(1);
|
|
366
492
|
});
|
|
367
493
|
});
|