wrangler 0.0.0-fe5dcfd → 0.0.0-ff2e7cb

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.
Files changed (195) hide show
  1. package/Cloudflare_CA.pem +18 -0
  2. package/README.md +33 -14
  3. package/bin/wrangler.js +126 -25
  4. package/kv-asset-handler.js +1 -0
  5. package/miniflare-dist/index.mjs +4893 -0
  6. package/package.json +156 -127
  7. package/src/__tests__/config-cache.test.ts +36 -0
  8. package/src/__tests__/configuration.test.ts +3829 -0
  9. package/src/__tests__/dev.test.tsx +1155 -63
  10. package/src/__tests__/guess-worker-format.test.ts +85 -0
  11. package/src/__tests__/{clipboardy-mock.js → helpers/clipboardy-mock.js} +0 -0
  12. package/src/__tests__/helpers/cmd-shim.d.ts +11 -0
  13. package/src/__tests__/helpers/faye-websocket.d.ts +6 -0
  14. package/src/__tests__/helpers/mock-account-id.ts +48 -0
  15. package/src/__tests__/helpers/mock-bin.ts +36 -0
  16. package/src/__tests__/helpers/mock-cfetch.ts +211 -0
  17. package/src/__tests__/helpers/mock-console.ts +97 -0
  18. package/src/__tests__/helpers/mock-dialogs.ts +153 -0
  19. package/src/__tests__/helpers/mock-http-server.ts +46 -0
  20. package/src/__tests__/helpers/mock-istty.ts +74 -0
  21. package/src/__tests__/helpers/mock-kv.ts +33 -0
  22. package/src/__tests__/helpers/mock-oauth-flow.ts +250 -0
  23. package/src/__tests__/helpers/mock-process.ts +39 -0
  24. package/src/__tests__/helpers/mock-stdin.ts +108 -0
  25. package/src/__tests__/helpers/mock-web-socket.ts +29 -0
  26. package/src/__tests__/helpers/run-in-tmp.ts +39 -0
  27. package/src/__tests__/helpers/run-wrangler.ts +16 -0
  28. package/src/__tests__/helpers/write-worker-source.ts +31 -0
  29. package/src/__tests__/helpers/write-wrangler-toml.ts +17 -0
  30. package/src/__tests__/https-options.test.ts +130 -0
  31. package/src/__tests__/index.test.ts +222 -251
  32. package/src/__tests__/init.test.ts +1992 -0
  33. package/src/__tests__/jest.setup.ts +95 -10
  34. package/src/__tests__/kv.test.ts +1361 -941
  35. package/src/__tests__/logger.test.ts +141 -0
  36. package/src/__tests__/package-manager.test.ts +353 -0
  37. package/src/__tests__/pages.test.ts +1254 -0
  38. package/src/__tests__/parse.test.ts +330 -0
  39. package/src/__tests__/publish.test.ts +6481 -705
  40. package/src/__tests__/pubsub.test.ts +276 -0
  41. package/src/__tests__/r2.test.ts +233 -0
  42. package/src/__tests__/route.test.ts +45 -0
  43. package/src/__tests__/secret.test.ts +486 -0
  44. package/src/__tests__/tail.test.ts +690 -0
  45. package/src/__tests__/user.test.ts +143 -0
  46. package/src/__tests__/whoami.test.tsx +212 -122
  47. package/src/abort.d.ts +3 -0
  48. package/src/api/dev.ts +39 -0
  49. package/src/api/index.ts +1 -0
  50. package/src/bundle-reporter.tsx +29 -0
  51. package/src/bundle.ts +212 -0
  52. package/src/cfetch/index.ts +88 -77
  53. package/src/cfetch/internal.ts +124 -46
  54. package/src/cli.ts +24 -6
  55. package/src/config/README.md +107 -0
  56. package/src/config/config.ts +243 -0
  57. package/src/config/diagnostics.ts +80 -0
  58. package/src/config/environment.ts +430 -0
  59. package/src/config/index.ts +225 -0
  60. package/src/config/validation-helpers.ts +584 -0
  61. package/src/config/validation.ts +1693 -0
  62. package/src/config-cache.ts +44 -0
  63. package/src/create-worker-preview.ts +199 -0
  64. package/src/create-worker-upload-form.ts +254 -0
  65. package/src/dev/dev-vars.ts +36 -0
  66. package/src/dev/dev.tsx +417 -0
  67. package/src/dev/local.tsx +350 -0
  68. package/src/dev/remote.tsx +294 -0
  69. package/src/dev/use-esbuild.ts +150 -0
  70. package/src/dev.tsx +515 -768
  71. package/src/dialogs.tsx +117 -59
  72. package/src/durable.ts +102 -0
  73. package/src/entry.ts +328 -0
  74. package/src/environment-variables.ts +35 -0
  75. package/src/errors.ts +11 -0
  76. package/src/generate.ts +33 -0
  77. package/src/git-client.ts +42 -0
  78. package/src/https-options.ts +123 -0
  79. package/src/index.tsx +1835 -1948
  80. package/src/init.ts +549 -0
  81. package/src/inspect.ts +615 -496
  82. package/src/intl-polyfill.d.ts +139 -0
  83. package/src/kv.ts +408 -0
  84. package/src/logger.ts +73 -0
  85. package/src/miniflare-cli/README.md +30 -0
  86. package/src/miniflare-cli/enum-keys.ts +17 -0
  87. package/src/miniflare-cli/index.ts +52 -0
  88. package/src/miniflare-cli/request-context.ts +40 -0
  89. package/src/module-collection.ts +247 -53
  90. package/src/open-in-browser.ts +17 -0
  91. package/src/package-manager.ts +174 -0
  92. package/src/pages/build.tsx +202 -0
  93. package/src/pages/constants.ts +7 -0
  94. package/src/pages/deployments.tsx +101 -0
  95. package/src/pages/dev.tsx +964 -0
  96. package/src/pages/functions/buildPlugin.ts +105 -0
  97. package/src/pages/functions/buildWorker.ts +151 -0
  98. package/src/pages/functions/filepath-routing.test.ts +234 -0
  99. package/src/pages/functions/filepath-routing.ts +189 -0
  100. package/src/pages/functions/identifiers.ts +78 -0
  101. package/src/pages/functions/routes.ts +151 -0
  102. package/src/pages/index.tsx +84 -0
  103. package/src/pages/projects.tsx +157 -0
  104. package/src/pages/publish.tsx +335 -0
  105. package/src/pages/types.ts +40 -0
  106. package/src/pages/upload.tsx +384 -0
  107. package/src/pages/utils.ts +12 -0
  108. package/src/parse.ts +286 -0
  109. package/src/paths.ts +26 -0
  110. package/src/preview.ts +31 -0
  111. package/src/proxy.ts +428 -254
  112. package/src/publish.ts +749 -365
  113. package/src/pubsub/index.ts +286 -0
  114. package/src/pubsub/pubsub-commands.tsx +604 -0
  115. package/src/r2.ts +50 -0
  116. package/src/selfsigned.d.ts +29 -0
  117. package/src/sites.tsx +294 -165
  118. package/src/tail/filters.ts +279 -0
  119. package/src/tail/index.ts +299 -0
  120. package/src/tail/printing.ts +67 -0
  121. package/src/update-check.ts +19 -0
  122. package/src/user/choose-account.tsx +60 -0
  123. package/src/user/env-vars.ts +46 -0
  124. package/src/user/generate-auth-url.ts +33 -0
  125. package/src/user/generate-random-state.ts +16 -0
  126. package/src/user/index.ts +3 -0
  127. package/src/user/user.tsx +1130 -0
  128. package/src/whoami.tsx +62 -41
  129. package/src/worker.ts +185 -0
  130. package/src/zones.ts +76 -0
  131. package/templates/checked-fetch.js +17 -0
  132. package/templates/gitignore +171 -0
  133. package/templates/new-worker-scheduled.js +17 -0
  134. package/templates/new-worker-scheduled.ts +32 -0
  135. package/templates/new-worker.js +15 -0
  136. package/templates/new-worker.ts +30 -0
  137. package/templates/no-op-worker.js +10 -0
  138. package/templates/pages-template-plugin.ts +155 -0
  139. package/templates/pages-template-worker.ts +161 -0
  140. package/templates/static-asset-facade.js +43 -0
  141. package/templates/tsconfig.json +105 -0
  142. package/wrangler-dist/cli.js +117167 -114038
  143. package/pages/functions/buildWorker.ts +0 -62
  144. package/pages/functions/filepath-routing.test.ts +0 -39
  145. package/pages/functions/filepath-routing.ts +0 -228
  146. package/pages/functions/identifiers.ts +0 -78
  147. package/pages/functions/routes.ts +0 -158
  148. package/pages/functions/template-worker.ts +0 -136
  149. package/src/__tests__/mock-cfetch.ts +0 -173
  150. package/src/__tests__/mock-dialogs.ts +0 -65
  151. package/src/__tests__/run-in-tmp.ts +0 -19
  152. package/src/__tests__/run-wrangler.ts +0 -32
  153. package/src/api/form_data.ts +0 -131
  154. package/src/api/preview.ts +0 -128
  155. package/src/api/worker.ts +0 -155
  156. package/src/config.ts +0 -646
  157. package/src/kv.tsx +0 -276
  158. package/src/pages.tsx +0 -1040
  159. package/src/tail.tsx +0 -73
  160. package/src/user.tsx +0 -1019
  161. package/static-asset-facade.js +0 -47
  162. package/vendor/@cloudflare/kv-asset-handler/CHANGELOG.md +0 -332
  163. package/vendor/@cloudflare/kv-asset-handler/LICENSE_APACHE +0 -176
  164. package/vendor/@cloudflare/kv-asset-handler/LICENSE_MIT +0 -25
  165. package/vendor/@cloudflare/kv-asset-handler/README.md +0 -245
  166. package/vendor/@cloudflare/kv-asset-handler/dist/index.d.ts +0 -32
  167. package/vendor/@cloudflare/kv-asset-handler/dist/index.js +0 -354
  168. package/vendor/@cloudflare/kv-asset-handler/dist/mocks.d.ts +0 -13
  169. package/vendor/@cloudflare/kv-asset-handler/dist/mocks.js +0 -148
  170. package/vendor/@cloudflare/kv-asset-handler/dist/test/getAssetFromKV.d.ts +0 -1
  171. package/vendor/@cloudflare/kv-asset-handler/dist/test/getAssetFromKV.js +0 -436
  172. package/vendor/@cloudflare/kv-asset-handler/dist/test/mapRequestToAsset.d.ts +0 -1
  173. package/vendor/@cloudflare/kv-asset-handler/dist/test/mapRequestToAsset.js +0 -40
  174. package/vendor/@cloudflare/kv-asset-handler/dist/test/serveSinglePageApp.d.ts +0 -1
  175. package/vendor/@cloudflare/kv-asset-handler/dist/test/serveSinglePageApp.js +0 -42
  176. package/vendor/@cloudflare/kv-asset-handler/dist/types.d.ts +0 -26
  177. package/vendor/@cloudflare/kv-asset-handler/dist/types.js +0 -31
  178. package/vendor/@cloudflare/kv-asset-handler/package.json +0 -52
  179. package/vendor/@cloudflare/kv-asset-handler/src/index.ts +0 -296
  180. package/vendor/@cloudflare/kv-asset-handler/src/mocks.ts +0 -136
  181. package/vendor/@cloudflare/kv-asset-handler/src/test/getAssetFromKV.ts +0 -464
  182. package/vendor/@cloudflare/kv-asset-handler/src/test/mapRequestToAsset.ts +0 -33
  183. package/vendor/@cloudflare/kv-asset-handler/src/test/serveSinglePageApp.ts +0 -42
  184. package/vendor/@cloudflare/kv-asset-handler/src/types.ts +0 -39
  185. package/vendor/wrangler-mime/CHANGELOG.md +0 -289
  186. package/vendor/wrangler-mime/LICENSE +0 -21
  187. package/vendor/wrangler-mime/Mime.js +0 -97
  188. package/vendor/wrangler-mime/README.md +0 -187
  189. package/vendor/wrangler-mime/cli.js +0 -46
  190. package/vendor/wrangler-mime/index.js +0 -4
  191. package/vendor/wrangler-mime/lite.js +0 -4
  192. package/vendor/wrangler-mime/package.json +0 -52
  193. package/vendor/wrangler-mime/types/other.js +0 -1
  194. package/vendor/wrangler-mime/types/standard.js +0 -1
  195. package/wrangler-dist/cli.js.map +0 -7
package/package.json CHANGED
@@ -1,129 +1,158 @@
1
1
  {
2
- "name": "wrangler",
3
- "version": "0.0.0-fe5dcfd",
4
- "author": "wrangler@cloudflare.com",
5
- "description": "Command-line interface for all things Cloudflare Workers",
6
- "bin": {
7
- "wrangler": "./bin/wrangler.js",
8
- "wrangler2": "./bin/wrangler.js"
9
- },
10
- "license": "MIT OR Apache-2.0",
11
- "bugs": {
12
- "url": "https://github.com/cloudflare/wrangler/issues"
13
- },
14
- "homepage": "https://github.com/cloudflare/wrangler#readme",
15
- "keywords": [
16
- "wrangler",
17
- "cloudflare",
18
- "workers",
19
- "cloudflare workers",
20
- "edge",
21
- "compute",
22
- "serverless",
23
- "serverless application",
24
- "serverless module",
25
- "wasm",
26
- "web",
27
- "assembly",
28
- "webassembly",
29
- "rust",
30
- "emscripten",
31
- "rust",
32
- "typescript",
33
- "graphql",
34
- "router",
35
- "http",
36
- "cli"
37
- ],
38
- "dependencies": {
39
- "esbuild": "0.14.1",
40
- "miniflare": "2.2.0",
41
- "path-to-regexp": "^6.2.0",
42
- "semiver": "^1.1.0",
43
- "xxhash-addon": "^1.4.0"
44
- },
45
- "optionalDependencies": {
46
- "fsevents": "~2.3.2"
47
- },
48
- "devDependencies": {
49
- "@babel/types": "^7.16.0",
50
- "@iarna/toml": "^2.2.5",
51
- "@types/estree": "^0.0.50",
52
- "@types/mime": "^2.0.3",
53
- "@types/react": "^17.0.37",
54
- "@types/serve-static": "^1.13.10",
55
- "@types/signal-exit": "^3.0.1",
56
- "@types/ws": "^8.2.1",
57
- "@types/yargs": "^17.0.7",
58
- "acorn": "^8.6.0",
59
- "acorn-walk": "^8.2.0",
60
- "chokidar": "^3.5.2",
61
- "clipboardy": "^3.0.0",
62
- "command-exists": "^1.2.9",
63
- "devtools-protocol": "^0.0.955664",
64
- "execa": "^6.0.0",
65
- "faye-websocket": "^0.11.4",
66
- "finalhandler": "^1.1.2",
67
- "find-up": "^6.2.0",
68
- "formdata-node": "^4.3.1",
69
- "ignore": "^5.2.0",
70
- "ink": "^3.2.0",
71
- "ink-select-input": "^4.2.1",
72
- "ink-table": "^3.0.0",
73
- "ink-testing-library": "^2.1.0",
74
- "ink-text-input": "^4.0.2",
75
- "mime": "^3.0.0",
76
- "node-fetch": "3.1.1",
77
- "open": "^8.4.0",
78
- "react": "^17.0.2",
79
- "react-error-boundary": "^3.1.4",
80
- "serve-static": "^1.14.1",
81
- "signal-exit": "^3.0.6",
82
- "tmp-promise": "^3.0.3",
83
- "undici": "^4.11.1",
84
- "ws": "^8.3.0",
85
- "yargs": "^17.3.0"
86
- },
87
- "files": [
88
- "src",
89
- "bin",
90
- "pages",
91
- "miniflare-config-stubs",
92
- "wrangler-dist",
93
- "static-asset-facade.js",
94
- "vendor",
95
- "import_meta_url.js"
96
- ],
97
- "scripts": {
98
- "clean": "rm -rf wrangler-dist",
99
- "bundle": "node -r esbuild-register scripts/bundle.ts",
100
- "build": "npm run clean && npm run bundle",
101
- "start": "npm run bundle && NODE_OPTIONS=--enable-source-maps ./bin/wrangler.js",
102
- "test": "CF_API_TOKEN=some-api-token CF_ACCOUNT_ID=some-account-id jest --silent=false --verbose=true",
103
- "test-watch": "npm run test -- --runInBand --testTimeout=50000 --watch"
104
- },
105
- "engines": {
106
- "node": ">=16.7.0"
107
- },
108
- "jest": {
109
- "restoreMocks": true,
110
- "testRegex": ".*.(test|spec)\\.[jt]sx?$",
111
- "transformIgnorePatterns": [
112
- "node_modules/(?!node-fetch|fetch-blob|find-up|locate-path|p-locate|p-limit|yocto-queue|path-exists|data-uri-to-buffer|formdata-polyfill|execa|strip-final-newline|npm-run-path|path-key|onetime|mimic-fn|human-signals|is-stream)"
113
- ],
114
- "moduleNameMapper": {
115
- "clipboardy": "<rootDir>/src/__tests__/clipboardy-mock.js"
116
- },
117
- "transform": {
118
- "^.+\\.c?(t|j)sx?$": [
119
- "esbuild-jest",
120
- {
121
- "sourcemap": true
122
- }
123
- ]
124
- },
125
- "setupFilesAfterEnv": [
126
- "<rootDir>/src/__tests__/jest.setup.ts"
127
- ]
128
- }
2
+ "name": "wrangler",
3
+ "version": "0.0.0-ff2e7cb",
4
+ "author": "wrangler@cloudflare.com",
5
+ "description": "Command-line interface for all things Cloudflare Workers",
6
+ "bin": {
7
+ "wrangler": "./bin/wrangler.js",
8
+ "wrangler2": "./bin/wrangler.js"
9
+ },
10
+ "main": "wrangler-dist/cli.js",
11
+ "license": "MIT OR Apache-2.0",
12
+ "bugs": {
13
+ "url": "https://github.com/cloudflare/wrangler2/issues"
14
+ },
15
+ "homepage": "https://github.com/cloudflare/wrangler2#readme",
16
+ "keywords": [
17
+ "wrangler",
18
+ "cloudflare",
19
+ "workers",
20
+ "cloudflare workers",
21
+ "edge",
22
+ "compute",
23
+ "serverless",
24
+ "serverless application",
25
+ "serverless module",
26
+ "wasm",
27
+ "web",
28
+ "assembly",
29
+ "webassembly",
30
+ "rust",
31
+ "emscripten",
32
+ "rust",
33
+ "typescript",
34
+ "graphql",
35
+ "router",
36
+ "http",
37
+ "cli"
38
+ ],
39
+ "dependencies": {
40
+ "@cloudflare/kv-asset-handler": "^0.2.0",
41
+ "@esbuild-plugins/node-globals-polyfill": "^0.1.1",
42
+ "@esbuild-plugins/node-modules-polyfill": "^0.1.4",
43
+ "blake3-wasm": "^2.1.5",
44
+ "esbuild": "0.14.47",
45
+ "miniflare": "^2.5.1",
46
+ "nanoid": "^3.3.3",
47
+ "path-to-regexp": "^6.2.0",
48
+ "selfsigned": "^2.0.1",
49
+ "semiver": "^1.1.0",
50
+ "xxhash-wasm": "^1.0.1"
51
+ },
52
+ "optionalDependencies": {
53
+ "fsevents": "~2.3.2"
54
+ },
55
+ "devDependencies": {
56
+ "@iarna/toml": "^3.0.0",
57
+ "@types/command-exists": "^1.2.0",
58
+ "@types/glob-to-regexp": "0.4.1",
59
+ "@types/mime": "^2.0.3",
60
+ "@types/prompts": "^2.0.14",
61
+ "@types/react": "^17.0.37",
62
+ "@types/serve-static": "^1.13.10",
63
+ "@types/signal-exit": "^3.0.1",
64
+ "@types/supports-color": "^8.1.1",
65
+ "@types/ws": "^8.5.3",
66
+ "@types/yargs": "^17.0.10",
67
+ "@webcontainer/env": "^1.0.1",
68
+ "chokidar": "^3.5.3",
69
+ "clipboardy": "^3.0.0",
70
+ "cmd-shim": "^4.1.0",
71
+ "command-exists": "^1.2.9",
72
+ "concurrently": "^7.2.2",
73
+ "devtools-protocol": "^0.0.955664",
74
+ "dotenv": "^16.0.0",
75
+ "execa": "^6.1.0",
76
+ "faye-websocket": "^0.11.4",
77
+ "finalhandler": "^1.2.0",
78
+ "find-up": "^6.3.0",
79
+ "get-port": "^6.1.2",
80
+ "glob-to-regexp": "0.4.1",
81
+ "http-terminator": "^3.2.0",
82
+ "ignore": "^5.2.0",
83
+ "ink": "^3.2.0",
84
+ "ink-select-input": "^4.2.1",
85
+ "ink-spinner": "^4.0.3",
86
+ "ink-table": "^3.0.0",
87
+ "ink-testing-library": "^2.1.0",
88
+ "ink-text-input": "^4.0.3",
89
+ "jest-fetch-mock": "^3.0.3",
90
+ "jest-websocket-mock": "^2.3.0",
91
+ "mime": "^3.0.0",
92
+ "open": "^8.4.0",
93
+ "p-queue": "^7.2.0",
94
+ "pretty-bytes": "^6.0.0",
95
+ "prompts": "^2.4.2",
96
+ "react": "^17.0.2",
97
+ "react-error-boundary": "^3.1.4",
98
+ "serve-static": "^1.15.0",
99
+ "signal-exit": "^3.0.7",
100
+ "supports-color": "^9.2.2",
101
+ "timeago.js": "^4.0.2",
102
+ "tmp-promise": "^3.0.3",
103
+ "ts-dedent": "^2.2.0",
104
+ "undici": "^5.5.1",
105
+ "update-check": "^1.5.4",
106
+ "ws": "^8.5.0",
107
+ "yargs": "^17.4.1"
108
+ },
109
+ "files": [
110
+ "src",
111
+ "bin",
112
+ "miniflare-config-stubs",
113
+ "miniflare-dist",
114
+ "wrangler-dist",
115
+ "templates",
116
+ "vendor",
117
+ "import_meta_url.js",
118
+ "kv-asset-handler.js",
119
+ "Cloudflare_CA.pem"
120
+ ],
121
+ "scripts": {
122
+ "clean": "rm -rf wrangler-dist miniflare-dist",
123
+ "check:type": "tsc",
124
+ "bundle": "node -r esbuild-register scripts/bundle.ts",
125
+ "build": "npm run clean && npm run bundle",
126
+ "dev": "npm run clean && concurrently -c black,blue 'npm run bundle -- --watch' 'npm run check:type -- --watch --preserveWatchOutput'",
127
+ "prepublishOnly": "SOURCEMAPS=false npm run build",
128
+ "start": "npm run bundle && NODE_OPTIONS=--enable-source-maps ./bin/wrangler.js",
129
+ "test": "jest --silent=false --verbose=true",
130
+ "test-watch": "npm run test -- --runInBand --testTimeout=50000 --watch"
131
+ },
132
+ "engines": {
133
+ "node": ">=16.7.0"
134
+ },
135
+ "jest": {
136
+ "restoreMocks": true,
137
+ "testTimeout": 30000,
138
+ "testRegex": ".*.(test|spec)\\.[jt]sx?$",
139
+ "transformIgnorePatterns": [
140
+ "node_modules/(?!find-up|locate-path|p-locate|p-limit|p-timeout|p-queue|yocto-queue|path-exists|execa|strip-final-newline|npm-run-path|path-key|onetime|mimic-fn|human-signals|is-stream|get-port|supports-color|pretty-bytes)"
141
+ ],
142
+ "moduleNameMapper": {
143
+ "clipboardy": "<rootDir>/src/__tests__/helpers/clipboardy-mock.js",
144
+ "miniflare/cli": "<rootDir>/../../node_modules/miniflare/dist/src/cli.js"
145
+ },
146
+ "transform": {
147
+ "^.+\\.c?(t|j)sx?$": [
148
+ "esbuild-jest",
149
+ {
150
+ "sourcemap": true
151
+ }
152
+ ]
153
+ },
154
+ "setupFilesAfterEnv": [
155
+ "<rootDir>/src/__tests__/jest.setup.ts"
156
+ ]
157
+ }
129
158
  }
@@ -0,0 +1,36 @@
1
+ import { getConfigCache, saveToConfigCache } from "../config-cache";
2
+ import { runInTempDir } from "./helpers/run-in-tmp";
3
+
4
+ interface PagesConfigCache {
5
+ account_id: string;
6
+ pages_project_name: string;
7
+ }
8
+
9
+ describe("config cache", () => {
10
+ runInTempDir();
11
+
12
+ const pagesConfigCacheFilename = "pages-config-cache.json";
13
+
14
+ it("should return an empty config if no file exists", () => {
15
+ expect(
16
+ getConfigCache<PagesConfigCache>(pagesConfigCacheFilename)
17
+ ).toMatchInlineSnapshot(`Object {}`);
18
+ });
19
+
20
+ it("should read and write values without overriding old ones", () => {
21
+ saveToConfigCache<PagesConfigCache>(pagesConfigCacheFilename, {
22
+ account_id: "some-account-id",
23
+ pages_project_name: "foo",
24
+ });
25
+ expect(
26
+ getConfigCache<PagesConfigCache>(pagesConfigCacheFilename).account_id
27
+ ).toEqual("some-account-id");
28
+
29
+ saveToConfigCache<PagesConfigCache>(pagesConfigCacheFilename, {
30
+ pages_project_name: "bar",
31
+ });
32
+ expect(
33
+ getConfigCache<PagesConfigCache>(pagesConfigCacheFilename).account_id
34
+ ).toEqual("some-account-id");
35
+ });
36
+ });