mirror of
https://github.com/trailbaseio/trailbase.git
synced 2026-04-24 01:18:36 -05:00
Add more surface-level runtime tests.
This commit is contained in:
Generated
+5
-241
@@ -126,7 +126,7 @@ importers:
|
||||
dependencies:
|
||||
'@astrojs/tailwind':
|
||||
specifier: ^5.1.5
|
||||
version: 5.1.5(astro@5.5.2(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@4.36.0)(typescript@4.9.4)(yaml@2.7.0))(tailwindcss@3.4.17(ts-node@10.9.2(@types/node@16.18.126)(typescript@4.9.4)))(ts-node@10.9.2(@types/node@16.18.126)(typescript@4.9.4))
|
||||
version: 5.1.5(astro@5.5.2(@types/node@22.13.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@4.36.0)(typescript@5.8.2)(yaml@2.7.0))(tailwindcss@3.4.17(ts-node@10.9.2(@types/node@22.13.10)(typescript@5.8.2)))(ts-node@10.9.2(@types/node@22.13.10)(typescript@5.8.2))
|
||||
'@nanostores/persistent':
|
||||
specifier: ^0.10.2
|
||||
version: 0.10.2(nanostores@0.11.4)
|
||||
@@ -135,7 +135,7 @@ importers:
|
||||
version: 0.5.0(nanostores@0.11.4)(solid-js@1.9.5)
|
||||
astro:
|
||||
specifier: ^5.5.2
|
||||
version: 5.5.2(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@4.36.0)(typescript@4.9.4)(yaml@2.7.0)
|
||||
version: 5.5.2(@types/node@22.13.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@4.36.0)(typescript@5.8.2)(yaml@2.7.0)
|
||||
astro-icon:
|
||||
specifier: ^1.1.5
|
||||
version: 1.1.5
|
||||
@@ -154,13 +154,13 @@ importers:
|
||||
devDependencies:
|
||||
'@astrojs/solid-js':
|
||||
specifier: ^5.0.5
|
||||
version: 5.0.5(@testing-library/jest-dom@6.6.3)(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(solid-devtools@0.30.1(solid-js@1.9.5)(vite@5.4.14(@types/node@16.18.126)(lightningcss@1.29.1)))(solid-js@1.9.5)(yaml@2.7.0)
|
||||
version: 5.0.5(@testing-library/jest-dom@6.6.3)(@types/node@22.13.10)(jiti@2.4.2)(lightningcss@1.29.1)(solid-devtools@0.30.1(solid-js@1.9.5)(vite@5.4.14(@types/node@22.13.10)(lightningcss@1.29.1)))(solid-js@1.9.5)(yaml@2.7.0)
|
||||
'@iconify-json/tabler':
|
||||
specifier: ^1.2.17
|
||||
version: 1.2.17
|
||||
'@tailwindcss/typography':
|
||||
specifier: ^0.5.16
|
||||
version: 0.5.16(tailwindcss@3.4.17(ts-node@10.9.2(@types/node@16.18.126)(typescript@4.9.4)))
|
||||
version: 0.5.16(tailwindcss@3.4.17(ts-node@10.9.2(@types/node@22.13.10)(typescript@5.8.2)))
|
||||
'@types/dateformat':
|
||||
specifier: ^5.0.3
|
||||
version: 5.0.3
|
||||
@@ -178,7 +178,7 @@ importers:
|
||||
version: 0.33.5
|
||||
tailwindcss:
|
||||
specifier: ^3.4.17
|
||||
version: 3.4.17(ts-node@10.9.2(@types/node@16.18.126)(typescript@4.9.4))
|
||||
version: 3.4.17(ts-node@10.9.2(@types/node@22.13.10)(typescript@5.8.2))
|
||||
|
||||
examples/coffee-vector-search:
|
||||
dependencies:
|
||||
@@ -6013,28 +6013,6 @@ snapshots:
|
||||
stream-replace-string: 2.0.0
|
||||
zod: 3.24.2
|
||||
|
||||
'@astrojs/solid-js@5.0.5(@testing-library/jest-dom@6.6.3)(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(solid-devtools@0.30.1(solid-js@1.9.5)(vite@5.4.14(@types/node@16.18.126)(lightningcss@1.29.1)))(solid-js@1.9.5)(yaml@2.7.0)':
|
||||
dependencies:
|
||||
solid-js: 1.9.5
|
||||
vite: 6.2.2(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.7.0)
|
||||
vite-plugin-solid: 2.11.6(@testing-library/jest-dom@6.6.3)(solid-js@1.9.5)(vite@6.2.2(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.7.0))
|
||||
optionalDependencies:
|
||||
solid-devtools: 0.30.1(solid-js@1.9.5)(vite@5.4.14(@types/node@16.18.126)(lightningcss@1.29.1))
|
||||
transitivePeerDependencies:
|
||||
- '@testing-library/jest-dom'
|
||||
- '@types/node'
|
||||
- jiti
|
||||
- less
|
||||
- lightningcss
|
||||
- sass
|
||||
- sass-embedded
|
||||
- stylus
|
||||
- sugarss
|
||||
- supports-color
|
||||
- terser
|
||||
- tsx
|
||||
- yaml
|
||||
|
||||
'@astrojs/solid-js@5.0.5(@testing-library/jest-dom@6.6.3)(@types/node@22.13.10)(jiti@2.4.2)(lightningcss@1.29.1)(solid-devtools@0.30.1(solid-js@1.9.5)(vite@5.4.14(@types/node@22.13.10)(lightningcss@1.29.1)))(solid-js@1.9.5)(yaml@2.7.0)':
|
||||
dependencies:
|
||||
solid-js: 1.9.5
|
||||
@@ -6116,16 +6094,6 @@ snapshots:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
'@astrojs/tailwind@5.1.5(astro@5.5.2(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@4.36.0)(typescript@4.9.4)(yaml@2.7.0))(tailwindcss@3.4.17(ts-node@10.9.2(@types/node@16.18.126)(typescript@4.9.4)))(ts-node@10.9.2(@types/node@16.18.126)(typescript@4.9.4))':
|
||||
dependencies:
|
||||
astro: 5.5.2(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@4.36.0)(typescript@4.9.4)(yaml@2.7.0)
|
||||
autoprefixer: 10.4.21(postcss@8.5.3)
|
||||
postcss: 8.5.3
|
||||
postcss-load-config: 4.0.2(postcss@8.5.3)(ts-node@10.9.2(@types/node@16.18.126)(typescript@4.9.4))
|
||||
tailwindcss: 3.4.17(ts-node@10.9.2(@types/node@16.18.126)(typescript@4.9.4))
|
||||
transitivePeerDependencies:
|
||||
- ts-node
|
||||
|
||||
'@astrojs/tailwind@5.1.5(astro@5.5.2(@types/node@22.13.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@4.36.0)(typescript@5.8.2)(yaml@2.7.0))(tailwindcss@3.4.17(ts-node@10.9.2(@types/node@22.13.10)(typescript@5.8.2)))(ts-node@10.9.2(@types/node@22.13.10)(typescript@5.8.2))':
|
||||
dependencies:
|
||||
astro: 5.5.2(@types/node@22.13.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@4.36.0)(typescript@5.8.2)(yaml@2.7.0)
|
||||
@@ -7286,14 +7254,6 @@ snapshots:
|
||||
dependencies:
|
||||
tslib: 2.8.1
|
||||
|
||||
'@tailwindcss/typography@0.5.16(tailwindcss@3.4.17(ts-node@10.9.2(@types/node@16.18.126)(typescript@4.9.4)))':
|
||||
dependencies:
|
||||
lodash.castarray: 4.4.0
|
||||
lodash.isplainobject: 4.0.6
|
||||
lodash.merge: 4.6.2
|
||||
postcss-selector-parser: 6.0.10
|
||||
tailwindcss: 3.4.17(ts-node@10.9.2(@types/node@16.18.126)(typescript@4.9.4))
|
||||
|
||||
'@tailwindcss/typography@0.5.16(tailwindcss@3.4.17(ts-node@10.9.2(@types/node@22.13.10)(typescript@5.8.2)))':
|
||||
dependencies:
|
||||
lodash.castarray: 4.4.0
|
||||
@@ -7886,102 +7846,6 @@ snapshots:
|
||||
valid-filename: 4.0.0
|
||||
zod: 3.24.2
|
||||
|
||||
astro@5.5.2(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@4.36.0)(typescript@4.9.4)(yaml@2.7.0):
|
||||
dependencies:
|
||||
'@astrojs/compiler': 2.11.0
|
||||
'@astrojs/internal-helpers': 0.6.1
|
||||
'@astrojs/markdown-remark': 6.3.0
|
||||
'@astrojs/telemetry': 3.2.0
|
||||
'@oslojs/encoding': 1.1.0
|
||||
'@rollup/pluginutils': 5.1.4(rollup@4.36.0)
|
||||
'@types/cookie': 0.6.0
|
||||
acorn: 8.14.1
|
||||
aria-query: 5.3.2
|
||||
axobject-query: 4.1.0
|
||||
boxen: 8.0.1
|
||||
ci-info: 4.2.0
|
||||
clsx: 2.1.1
|
||||
common-ancestor-path: 1.0.1
|
||||
cookie: 0.7.2
|
||||
cssesc: 3.0.0
|
||||
debug: 4.4.0
|
||||
deterministic-object-hash: 2.0.2
|
||||
devalue: 5.1.1
|
||||
diff: 5.2.0
|
||||
dlv: 1.1.3
|
||||
dset: 3.1.4
|
||||
es-module-lexer: 1.6.0
|
||||
esbuild: 0.25.1
|
||||
estree-walker: 3.0.3
|
||||
flattie: 1.1.1
|
||||
github-slugger: 2.0.0
|
||||
html-escaper: 3.0.3
|
||||
http-cache-semantics: 4.1.1
|
||||
js-yaml: 4.1.0
|
||||
kleur: 4.1.5
|
||||
magic-string: 0.30.17
|
||||
magicast: 0.3.5
|
||||
mrmime: 2.0.1
|
||||
neotraverse: 0.6.18
|
||||
p-limit: 6.2.0
|
||||
p-queue: 8.1.0
|
||||
package-manager-detector: 1.1.0
|
||||
picomatch: 4.0.2
|
||||
prompts: 2.4.2
|
||||
rehype: 13.0.2
|
||||
semver: 7.7.1
|
||||
shiki: 1.29.2
|
||||
tinyexec: 0.3.2
|
||||
tinyglobby: 0.2.12
|
||||
tsconfck: 3.1.5(typescript@4.9.4)
|
||||
ultrahtml: 1.5.3
|
||||
unist-util-visit: 5.0.0
|
||||
unstorage: 1.15.0
|
||||
vfile: 6.0.3
|
||||
vite: 6.2.2(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.7.0)
|
||||
vitefu: 1.0.6(vite@6.2.2(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.7.0))
|
||||
xxhash-wasm: 1.1.0
|
||||
yargs-parser: 21.1.1
|
||||
yocto-spinner: 0.2.1
|
||||
zod: 3.24.2
|
||||
zod-to-json-schema: 3.24.4(zod@3.24.2)
|
||||
zod-to-ts: 1.2.0(typescript@4.9.4)(zod@3.24.2)
|
||||
optionalDependencies:
|
||||
sharp: 0.33.5
|
||||
transitivePeerDependencies:
|
||||
- '@azure/app-configuration'
|
||||
- '@azure/cosmos'
|
||||
- '@azure/data-tables'
|
||||
- '@azure/identity'
|
||||
- '@azure/keyvault-secrets'
|
||||
- '@azure/storage-blob'
|
||||
- '@capacitor/preferences'
|
||||
- '@deno/kv'
|
||||
- '@netlify/blobs'
|
||||
- '@planetscale/database'
|
||||
- '@types/node'
|
||||
- '@upstash/redis'
|
||||
- '@vercel/blob'
|
||||
- '@vercel/kv'
|
||||
- aws4fetch
|
||||
- db0
|
||||
- idb-keyval
|
||||
- ioredis
|
||||
- jiti
|
||||
- less
|
||||
- lightningcss
|
||||
- rollup
|
||||
- sass
|
||||
- sass-embedded
|
||||
- stylus
|
||||
- sugarss
|
||||
- supports-color
|
||||
- terser
|
||||
- tsx
|
||||
- typescript
|
||||
- uploadthing
|
||||
- yaml
|
||||
|
||||
astro@5.5.2(@types/node@22.13.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@4.36.0)(typescript@5.8.2)(yaml@2.7.0):
|
||||
dependencies:
|
||||
'@astrojs/compiler': 2.11.0
|
||||
@@ -10606,14 +10470,6 @@ snapshots:
|
||||
camelcase-css: 2.0.1
|
||||
postcss: 8.5.3
|
||||
|
||||
postcss-load-config@4.0.2(postcss@8.5.3)(ts-node@10.9.2(@types/node@16.18.126)(typescript@4.9.4)):
|
||||
dependencies:
|
||||
lilconfig: 3.1.3
|
||||
yaml: 2.7.0
|
||||
optionalDependencies:
|
||||
postcss: 8.5.3
|
||||
ts-node: 10.9.2(@types/node@16.18.126)(typescript@4.9.4)
|
||||
|
||||
postcss-load-config@4.0.2(postcss@8.5.3)(ts-node@10.9.2(@types/node@22.13.10)(typescript@5.8.2)):
|
||||
dependencies:
|
||||
lilconfig: 3.1.3
|
||||
@@ -11272,20 +11128,6 @@ snapshots:
|
||||
|
||||
smol-toml@1.3.1: {}
|
||||
|
||||
solid-devtools@0.30.1(solid-js@1.9.5)(vite@5.4.14(@types/node@16.18.126)(lightningcss@1.29.1)):
|
||||
dependencies:
|
||||
'@babel/core': 7.26.10
|
||||
'@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.10)
|
||||
'@babel/types': 7.26.10
|
||||
'@solid-devtools/debugger': 0.23.4(solid-js@1.9.5)
|
||||
'@solid-devtools/shared': 0.13.2(solid-js@1.9.5)
|
||||
solid-js: 1.9.5
|
||||
optionalDependencies:
|
||||
vite: 5.4.14(@types/node@16.18.126)(lightningcss@1.29.1)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
optional: true
|
||||
|
||||
solid-devtools@0.30.1(solid-js@1.9.5)(vite@5.4.14(@types/node@22.13.10)(lightningcss@1.29.1)):
|
||||
dependencies:
|
||||
'@babel/core': 7.26.10
|
||||
@@ -11494,33 +11336,6 @@ snapshots:
|
||||
dependencies:
|
||||
tailwindcss: 3.4.17(ts-node@10.9.2(@types/node@22.13.10)(typescript@5.8.2))
|
||||
|
||||
tailwindcss@3.4.17(ts-node@10.9.2(@types/node@16.18.126)(typescript@4.9.4)):
|
||||
dependencies:
|
||||
'@alloc/quick-lru': 5.2.0
|
||||
arg: 5.0.2
|
||||
chokidar: 3.6.0
|
||||
didyoumean: 1.2.2
|
||||
dlv: 1.1.3
|
||||
fast-glob: 3.3.3
|
||||
glob-parent: 6.0.2
|
||||
is-glob: 4.0.3
|
||||
jiti: 1.21.7
|
||||
lilconfig: 3.1.3
|
||||
micromatch: 4.0.8
|
||||
normalize-path: 3.0.0
|
||||
object-hash: 3.0.0
|
||||
picocolors: 1.1.1
|
||||
postcss: 8.5.3
|
||||
postcss-import: 15.1.0(postcss@8.5.3)
|
||||
postcss-js: 4.0.1(postcss@8.5.3)
|
||||
postcss-load-config: 4.0.2(postcss@8.5.3)(ts-node@10.9.2(@types/node@16.18.126)(typescript@4.9.4))
|
||||
postcss-nested: 6.2.0(postcss@8.5.3)
|
||||
postcss-selector-parser: 6.1.2
|
||||
resolve: 1.22.10
|
||||
sucrase: 3.35.0
|
||||
transitivePeerDependencies:
|
||||
- ts-node
|
||||
|
||||
tailwindcss@3.4.17(ts-node@10.9.2(@types/node@22.13.10)(typescript@5.8.2)):
|
||||
dependencies:
|
||||
'@alloc/quick-lru': 5.2.0
|
||||
@@ -11669,10 +11484,6 @@ snapshots:
|
||||
ts-poet: 6.11.0
|
||||
ts-proto-descriptors: 2.0.0
|
||||
|
||||
tsconfck@3.1.5(typescript@4.9.4):
|
||||
optionalDependencies:
|
||||
typescript: 4.9.4
|
||||
|
||||
tsconfck@3.1.5(typescript@5.8.2):
|
||||
optionalDependencies:
|
||||
typescript: 5.8.2
|
||||
@@ -11906,21 +11717,6 @@ snapshots:
|
||||
rollup: 2.79.2
|
||||
vite: 6.2.2(@types/node@22.13.10)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.7.0)
|
||||
|
||||
vite-plugin-solid@2.11.6(@testing-library/jest-dom@6.6.3)(solid-js@1.9.5)(vite@6.2.2(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.7.0)):
|
||||
dependencies:
|
||||
'@babel/core': 7.26.10
|
||||
'@types/babel__core': 7.20.5
|
||||
babel-preset-solid: 1.9.5(@babel/core@7.26.10)
|
||||
merge-anything: 5.1.7
|
||||
solid-js: 1.9.5
|
||||
solid-refresh: 0.6.3(solid-js@1.9.5)
|
||||
vite: 6.2.2(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.7.0)
|
||||
vitefu: 1.0.6(vite@6.2.2(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.7.0))
|
||||
optionalDependencies:
|
||||
'@testing-library/jest-dom': 6.6.3
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
vite-plugin-solid@2.11.6(@testing-library/jest-dom@6.6.3)(solid-js@1.9.5)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.7.0)):
|
||||
dependencies:
|
||||
'@babel/core': 7.26.10
|
||||
@@ -11947,17 +11743,6 @@ snapshots:
|
||||
- supports-color
|
||||
- typescript
|
||||
|
||||
vite@5.4.14(@types/node@16.18.126)(lightningcss@1.29.1):
|
||||
dependencies:
|
||||
esbuild: 0.21.5
|
||||
postcss: 8.5.3
|
||||
rollup: 4.36.0
|
||||
optionalDependencies:
|
||||
'@types/node': 16.18.126
|
||||
fsevents: 2.3.3
|
||||
lightningcss: 1.29.1
|
||||
optional: true
|
||||
|
||||
vite@5.4.14(@types/node@22.13.10)(lightningcss@1.29.1):
|
||||
dependencies:
|
||||
esbuild: 0.21.5
|
||||
@@ -11969,18 +11754,6 @@ snapshots:
|
||||
lightningcss: 1.29.1
|
||||
optional: true
|
||||
|
||||
vite@6.2.2(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.7.0):
|
||||
dependencies:
|
||||
esbuild: 0.25.1
|
||||
postcss: 8.5.3
|
||||
rollup: 4.36.0
|
||||
optionalDependencies:
|
||||
'@types/node': 16.18.126
|
||||
fsevents: 2.3.3
|
||||
jiti: 2.4.2
|
||||
lightningcss: 1.29.1
|
||||
yaml: 2.7.0
|
||||
|
||||
vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.7.0):
|
||||
dependencies:
|
||||
esbuild: 0.25.1
|
||||
@@ -11993,10 +11766,6 @@ snapshots:
|
||||
lightningcss: 1.29.1
|
||||
yaml: 2.7.0
|
||||
|
||||
vitefu@1.0.6(vite@6.2.2(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.7.0)):
|
||||
optionalDependencies:
|
||||
vite: 6.2.2(@types/node@16.18.126)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.7.0)
|
||||
|
||||
vitefu@1.0.6(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.7.0)):
|
||||
optionalDependencies:
|
||||
vite: 6.2.2(@types/node@22.13.10)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.7.0)
|
||||
@@ -12290,11 +12059,6 @@ snapshots:
|
||||
dependencies:
|
||||
zod: 3.24.2
|
||||
|
||||
zod-to-ts@1.2.0(typescript@4.9.4)(zod@3.24.2):
|
||||
dependencies:
|
||||
typescript: 4.9.4
|
||||
zod: 3.24.2
|
||||
|
||||
zod-to-ts@1.2.0(typescript@5.8.2)(zod@3.24.2):
|
||||
dependencies:
|
||||
typescript: 5.8.2
|
||||
|
||||
@@ -1,2 +1,32 @@
|
||||
export { fs } from "./deno";
|
||||
export * from "./trailbase";
|
||||
|
||||
export {
|
||||
HttpError,
|
||||
StatusCodes,
|
||||
addCronCallback,
|
||||
addPeriodicCallback,
|
||||
addRoute,
|
||||
execute,
|
||||
htmlHandler,
|
||||
jsonHandler,
|
||||
parsePath,
|
||||
query,
|
||||
stringHandler,
|
||||
} from "./trailbase";
|
||||
|
||||
export type {
|
||||
CallbackType,
|
||||
HeaderMapType,
|
||||
HtmlResponseType,
|
||||
JsonRequestType,
|
||||
JsonResponseType,
|
||||
MaybeResponse,
|
||||
Method,
|
||||
ParsedPath,
|
||||
PathParamsType,
|
||||
RequestType,
|
||||
ResponseType,
|
||||
StringRequestType,
|
||||
StringResponseType,
|
||||
UserType,
|
||||
} from "./trailbase";
|
||||
|
||||
@@ -615,7 +615,7 @@ export function addRoute(
|
||||
routerCallbacks.set(`${method}:${route}`, callback);
|
||||
}
|
||||
|
||||
async function dispatch(
|
||||
export async function dispatch(
|
||||
method: Method,
|
||||
route: string,
|
||||
uri: string,
|
||||
|
||||
@@ -1,19 +1,22 @@
|
||||
import { test, expect } from "vitest";
|
||||
|
||||
import { addPeriodicCallback } from "../src/trailbase";
|
||||
import { addPeriodicCallback, parsePath, query, execute, stringHandler, addRoute, dispatch } from "../src/trailbase";
|
||||
import type { Method, StringRequestType } from "../src/trailbase";
|
||||
import { decodeFallback, encodeFallback } from "../src/util";
|
||||
|
||||
globalThis.rustyscript = {
|
||||
async_functions: {
|
||||
},
|
||||
async_functions: {},
|
||||
functions: {
|
||||
isolate_id: () => 0,
|
||||
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
||||
install_route: (_method: Method, _route: string) => { },
|
||||
},
|
||||
};
|
||||
|
||||
test("periodic callback", async () => {
|
||||
const promise = new Promise((resolve) => {
|
||||
let count = 0;
|
||||
const result : number[] = [];
|
||||
const result: number[] = [];
|
||||
|
||||
addPeriodicCallback(1, (cancel) => {
|
||||
result.push(count++);
|
||||
@@ -27,3 +30,64 @@ test("periodic callback", async () => {
|
||||
|
||||
expect(await promise).toEqual([0, 1, 2]);
|
||||
});
|
||||
|
||||
test("binary encode/decode", () => {
|
||||
const a = `1234567890-=qwertyuiop[]asdfghjkl;'zxcvbnm,./~!@#$%^&*()_+ `;
|
||||
expect(decodeFallback(encodeFallback(a))).toEqual(a);
|
||||
});
|
||||
|
||||
test("parse path", () => {
|
||||
const parsedPath = parsePath("/p0/p1/p2?a=x&a=y&b=z");
|
||||
expect(parsedPath.path).toEqual("/p0/p1/p2");
|
||||
const q = parsedPath.query;
|
||||
expect(q.getAll("a")).toEqual(["x", "y"]);
|
||||
expect(q.get("b")).toEqual("z");
|
||||
});
|
||||
|
||||
test("db functions", async () => {
|
||||
type Args = {
|
||||
query: string;
|
||||
params: unknown[];
|
||||
};
|
||||
let queryArgs: Args = { query: "", params: [] };
|
||||
let executeArgs: Args = { query: "", params: [] };
|
||||
|
||||
{
|
||||
const query = async (query: string, params: unknown[]) => queryArgs = { query, params };
|
||||
const execute = async (query: string, params: unknown[]) => executeArgs = { query, params };
|
||||
|
||||
globalThis.rustyscript = {
|
||||
...globalThis.rustyscript,
|
||||
async_functions: {
|
||||
query,
|
||||
execute,
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
const executeStr = "INSERT INTO table (col) VALUES (?1)";
|
||||
await execute(executeStr, ["test"]);
|
||||
expect(executeArgs.query).toEqual(executeStr);
|
||||
expect(executeArgs.params).toEqual(["test"]);
|
||||
|
||||
const queryStr = "SELECT * FROM table WHERE col = ?1";
|
||||
await query(queryStr, ["test"]);
|
||||
expect(queryArgs.query).toEqual(queryStr);
|
||||
expect(queryArgs.params).toEqual(["test"]);
|
||||
});
|
||||
|
||||
test("routes functions", async () => {
|
||||
const promise = new Promise<StringRequestType>((resolve) => {
|
||||
addRoute("GET", "/test", stringHandler(async (req: StringRequestType) => {
|
||||
resolve(req);
|
||||
return "response";
|
||||
}));
|
||||
});
|
||||
|
||||
const uri = "http://127.0.0.1";
|
||||
dispatch("GET", "/test", uri, [], [], undefined, encodeFallback("test"));
|
||||
|
||||
const result : StringRequestType = await promise;
|
||||
|
||||
expect(result.uri).toEqual(uri);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user