From 02f6c56583306c3035f4b5f8a9acd22583744c3d Mon Sep 17 00:00:00 2001 From: Josh GM Walker <56300765+Josh-Walker-GM@users.noreply.github.com> Date: Sat, 20 Jan 2024 10:53:33 +0000 Subject: [PATCH 1/5] api package --- packages/api/package.json | 8 +- .../src/__tests__/normalizeRequest.test.ts | 1 + packages/api/src/__tests__/transforms.test.ts | 2 + .../getAuthenticationContext.test.ts | 1 + .../api/src/auth/__tests__/parseJWT.test.ts | 2 + .../__tests__/base64Sha1Verifier.test.ts | 2 + .../__tests__/base64Sha256Verifier.test.ts | 2 + .../verifiers/__tests__/jwtVerifier.test.ts | 2 + .../__tests__/secretKeyVerifier.test.ts | 10 +- .../verifiers/__tests__/sha1Verifier.test.ts | 2 + .../__tests__/sha256Verifier.test.ts | 2 + .../verifiers/__tests__/skipVerifier.test.ts | 6 +- .../__tests__/timestampSchemeVerifier.test.ts | 2 + .../api/src/cache/__tests__/cache.test.ts | 2 + .../src/cache/__tests__/cacheFindMany.test.ts | 35 +- .../cache/__tests__/deleteCacheKey.test.js | 2 + .../src/cache/__tests__/disconnect.test.ts | 8 +- .../api/src/cache/__tests__/shared.test.ts | 2 + packages/api/src/logger/logger.test.ts | 1 + .../validations/__tests__/validations.test.js | 14 +- packages/api/src/webhooks/webhooks.test.ts | 5 +- packages/api/vitest.config.mts | 13 + .../api/{jest.config.js => vitest.setup.mts} | 3 +- yarn.lock | 870 +++++++++++++++++- 24 files changed, 956 insertions(+), 41 deletions(-) create mode 100644 packages/api/vitest.config.mts rename packages/api/{jest.config.js => vitest.setup.mts} (67%) diff --git a/packages/api/package.json b/packages/api/package.json index c6f7d5ec55fb..e2e244070be9 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -28,8 +28,8 @@ "build:types": "tsc --build --verbose", "build:watch": "nodemon --watch src --ext \"js,jsx,ts,tsx\" --ignore dist --exec \"yarn build\"", "prepublishOnly": "NODE_ENV=production yarn build", - "test": "jest src", - "test:watch": "yarn test --watch" + "test": "vitest run src", + "test:watch": "vitest watch src" }, "dependencies": { "@babel/runtime-corejs3": "7.23.6", @@ -50,12 +50,12 @@ "@types/memjs": "1", "@types/pascalcase": "1.0.3", "@types/split2": "4.2.3", - "jest": "29.7.0", "memjs": "1.3.1", "redis": "4.6.7", "split2": "4.2.0", "ts-toolbelt": "9.6.0", - "typescript": "5.3.3" + "typescript": "5.3.3", + "vitest": "1.2.1" }, "peerDependencies": { "memjs": "1.3.1", diff --git a/packages/api/src/__tests__/normalizeRequest.test.ts b/packages/api/src/__tests__/normalizeRequest.test.ts index b1938636c897..e63299e0cab1 100644 --- a/packages/api/src/__tests__/normalizeRequest.test.ts +++ b/packages/api/src/__tests__/normalizeRequest.test.ts @@ -1,5 +1,6 @@ import { Headers } from '@whatwg-node/fetch' import type { APIGatewayProxyEvent } from 'aws-lambda' +import { test, expect } from 'vitest' import { normalizeRequest } from '../transforms' diff --git a/packages/api/src/__tests__/transforms.test.ts b/packages/api/src/__tests__/transforms.test.ts index c6b52ab1abcf..1a2fad19a80f 100644 --- a/packages/api/src/__tests__/transforms.test.ts +++ b/packages/api/src/__tests__/transforms.test.ts @@ -1,3 +1,5 @@ +import { describe, it, expect } from 'vitest' + import { removeNulls } from '../transforms' describe('removeNulls utility', () => { diff --git a/packages/api/src/auth/__tests__/getAuthenticationContext.test.ts b/packages/api/src/auth/__tests__/getAuthenticationContext.test.ts index 727c2460415e..cfbebafd8c73 100644 --- a/packages/api/src/auth/__tests__/getAuthenticationContext.test.ts +++ b/packages/api/src/auth/__tests__/getAuthenticationContext.test.ts @@ -1,4 +1,5 @@ import type { APIGatewayProxyEvent, Context } from 'aws-lambda' +import { describe, it, expect } from 'vitest' import { getAuthenticationContext } from '../index' diff --git a/packages/api/src/auth/__tests__/parseJWT.test.ts b/packages/api/src/auth/__tests__/parseJWT.test.ts index bc67194c5c58..2a5656be487f 100644 --- a/packages/api/src/auth/__tests__/parseJWT.test.ts +++ b/packages/api/src/auth/__tests__/parseJWT.test.ts @@ -1,3 +1,5 @@ +import { describe, test, expect } from 'vitest' + import { parseJWT } from '../parseJWT' const JWT_CLAIMS: Record = { diff --git a/packages/api/src/auth/verifiers/__tests__/base64Sha1Verifier.test.ts b/packages/api/src/auth/verifiers/__tests__/base64Sha1Verifier.test.ts index 90ad19da86b0..cc91f2f7e330 100644 --- a/packages/api/src/auth/verifiers/__tests__/base64Sha1Verifier.test.ts +++ b/packages/api/src/auth/verifiers/__tests__/base64Sha1Verifier.test.ts @@ -1,3 +1,5 @@ +import { describe, test, expect } from 'vitest' + import { createVerifier, WebhookVerificationError } from '../index' const stringPayload = 'No more secrets, Marty.' diff --git a/packages/api/src/auth/verifiers/__tests__/base64Sha256Verifier.test.ts b/packages/api/src/auth/verifiers/__tests__/base64Sha256Verifier.test.ts index e14a04f083d1..893d11383357 100644 --- a/packages/api/src/auth/verifiers/__tests__/base64Sha256Verifier.test.ts +++ b/packages/api/src/auth/verifiers/__tests__/base64Sha256Verifier.test.ts @@ -1,3 +1,5 @@ +import { describe, test, expect } from 'vitest' + import { createVerifier, WebhookVerificationError } from '../index' const stringPayload = 'No more secrets, Marty.' diff --git a/packages/api/src/auth/verifiers/__tests__/jwtVerifier.test.ts b/packages/api/src/auth/verifiers/__tests__/jwtVerifier.test.ts index 93a4e476654a..985c9d37ffb9 100644 --- a/packages/api/src/auth/verifiers/__tests__/jwtVerifier.test.ts +++ b/packages/api/src/auth/verifiers/__tests__/jwtVerifier.test.ts @@ -1,3 +1,5 @@ +import { describe, test, expect } from 'vitest' + import { createVerifier, WebhookSignError, diff --git a/packages/api/src/auth/verifiers/__tests__/secretKeyVerifier.test.ts b/packages/api/src/auth/verifiers/__tests__/secretKeyVerifier.test.ts index 1008abcd20d9..1c608c1a88d9 100644 --- a/packages/api/src/auth/verifiers/__tests__/secretKeyVerifier.test.ts +++ b/packages/api/src/auth/verifiers/__tests__/secretKeyVerifier.test.ts @@ -1,3 +1,5 @@ +import { beforeEach, afterEach, describe, test, vi, expect } from 'vitest' + import { createVerifier, WebhookVerificationError } from '../index' const payload = 'No more secrets, Marty.' @@ -6,11 +8,11 @@ const secret = 'MY_VOICE_IS_MY_PASSPORT_VERIFY_ME' const { sign, verify } = createVerifier('secretKeyVerifier') beforeEach(() => { - jest.spyOn(console, 'warn').mockImplementation(jest.fn()) + vi.spyOn(console, 'warn').mockImplementation(vi.fn()) }) afterEach(() => { - jest.spyOn(console, 'warn').mockRestore() + vi.spyOn(console, 'warn').mockRestore() }) describe('secretKey verifier', () => { @@ -21,10 +23,10 @@ describe('secretKey verifier', () => { }) test('it verifies that the secret and signature are identical', () => { - jest.spyOn(console, 'warn').mockImplementation(jest.fn()) + vi.spyOn(console, 'warn').mockImplementation(vi.fn()) const signature = sign({ payload, secret }) expect(verify({ payload, secret, signature })).toBeTruthy() - jest.spyOn(console, 'warn').mockRestore() + vi.spyOn(console, 'warn').mockRestore() }) test('it denies verification if the secret and signature are not the same', () => { diff --git a/packages/api/src/auth/verifiers/__tests__/sha1Verifier.test.ts b/packages/api/src/auth/verifiers/__tests__/sha1Verifier.test.ts index d183a7f11f90..a3c84c260a0b 100644 --- a/packages/api/src/auth/verifiers/__tests__/sha1Verifier.test.ts +++ b/packages/api/src/auth/verifiers/__tests__/sha1Verifier.test.ts @@ -1,3 +1,5 @@ +import { describe, test, expect } from 'vitest' + import { createVerifier, WebhookVerificationError } from '../index' const stringPayload = 'No more secrets, Marty.' diff --git a/packages/api/src/auth/verifiers/__tests__/sha256Verifier.test.ts b/packages/api/src/auth/verifiers/__tests__/sha256Verifier.test.ts index 083a0b4c3a1c..cbef6446aa01 100644 --- a/packages/api/src/auth/verifiers/__tests__/sha256Verifier.test.ts +++ b/packages/api/src/auth/verifiers/__tests__/sha256Verifier.test.ts @@ -1,3 +1,5 @@ +import { describe, expect, test } from 'vitest' + import { createVerifier, WebhookVerificationError } from '../index' const stringPayload = 'No more secrets, Marty.' diff --git a/packages/api/src/auth/verifiers/__tests__/skipVerifier.test.ts b/packages/api/src/auth/verifiers/__tests__/skipVerifier.test.ts index 7f6af5ccb6d0..d4bc2be66cf9 100644 --- a/packages/api/src/auth/verifiers/__tests__/skipVerifier.test.ts +++ b/packages/api/src/auth/verifiers/__tests__/skipVerifier.test.ts @@ -1,3 +1,5 @@ +import { beforeEach, afterEach, describe, test, expect, vi } from 'vitest' + import { createVerifier } from '../index' const payload = 'No more secrets, Marty.' @@ -6,11 +8,11 @@ const secret = 'MY_VOICE_IS_MY_PASSPORT_VERIFY_ME' const { sign, verify } = createVerifier('skipVerifier') beforeEach(() => { - jest.spyOn(console, 'warn').mockImplementation(jest.fn()) + vi.spyOn(console, 'warn').mockImplementation(vi.fn()) }) afterEach(() => { - jest.spyOn(console, 'warn').mockRestore() + vi.spyOn(console, 'warn').mockRestore() }) describe('skips verification verifier', () => { diff --git a/packages/api/src/auth/verifiers/__tests__/timestampSchemeVerifier.test.ts b/packages/api/src/auth/verifiers/__tests__/timestampSchemeVerifier.test.ts index 3b46ae242d4c..9ba970b7a929 100644 --- a/packages/api/src/auth/verifiers/__tests__/timestampSchemeVerifier.test.ts +++ b/packages/api/src/auth/verifiers/__tests__/timestampSchemeVerifier.test.ts @@ -1,5 +1,7 @@ // import type { APIGatewayProxyEvent } from 'aws-lambda' +import { describe, test, expect } from 'vitest' + import { createVerifier, WebhookVerificationError } from '../index' const payload = 'No more secrets, Marty.' diff --git a/packages/api/src/cache/__tests__/cache.test.ts b/packages/api/src/cache/__tests__/cache.test.ts index c12ba794dfe9..8e784f0da4ae 100644 --- a/packages/api/src/cache/__tests__/cache.test.ts +++ b/packages/api/src/cache/__tests__/cache.test.ts @@ -1,3 +1,5 @@ +import { describe, it, expect } from 'vitest' + import InMemoryClient from '../clients/InMemoryClient' import { createCache } from '../index' diff --git a/packages/api/src/cache/__tests__/cacheFindMany.test.ts b/packages/api/src/cache/__tests__/cacheFindMany.test.ts index 497b6628dacf..f5cf5ccb7fc4 100644 --- a/packages/api/src/cache/__tests__/cacheFindMany.test.ts +++ b/packages/api/src/cache/__tests__/cacheFindMany.test.ts @@ -1,23 +1,28 @@ import { PrismaClient } from '@prisma/client' +import { describe, afterEach, it, vi, expect } from 'vitest' import InMemoryClient from '../clients/InMemoryClient' import { createCache } from '../index' -const mockFindFirst = jest.fn() -const mockFindMany = jest.fn() +const mockFindFirst = vi.fn() +const mockFindMany = vi.fn() -jest.mock('@prisma/client', () => ({ - PrismaClient: jest.fn(() => ({ - user: { - findFirst: mockFindFirst, - findMany: mockFindMany, - }, - })), -})) +vi.mock('@prisma/client', () => { + return { + PrismaClient: vi.fn(() => ({ + user: { + findFirst: mockFindFirst, + findMany: mockFindMany, + }, + })), + // NOTE: This is only available after `prisma generate` has been run + PrismaClientValidationError: new Error('PrismaClientValidationError'), + } +}) describe('cacheFindMany', () => { afterEach(() => { - jest.clearAllMocks() + vi.clearAllMocks() }) it('adds the collection to the cache based on latest updated user', async () => { @@ -33,7 +38,7 @@ describe('cacheFindMany', () => { const client = new InMemoryClient() const { cacheFindMany } = createCache(client) - const spy = jest.spyOn(client, 'set') + const spy = vi.spyOn(client, 'set') await cacheFindMany('test', PrismaClient().user) @@ -66,7 +71,7 @@ describe('cacheFindMany', () => { mockFindMany.mockImplementation(() => [user]) const { cacheFindMany } = createCache(client) - const spy = jest.spyOn(client, 'set') + const spy = vi.spyOn(client, 'set') await cacheFindMany('test', PrismaClient().user) @@ -86,8 +91,8 @@ describe('cacheFindMany', () => { mockFindFirst.mockImplementation(() => null) mockFindMany.mockImplementation(() => []) const { cacheFindMany } = createCache(client) - const getSpy = jest.spyOn(client, 'get') - const setSpy = jest.spyOn(client, 'set') + const getSpy = vi.spyOn(client, 'get') + const setSpy = vi.spyOn(client, 'set') const result = await cacheFindMany('test', PrismaClient().user) diff --git a/packages/api/src/cache/__tests__/deleteCacheKey.test.js b/packages/api/src/cache/__tests__/deleteCacheKey.test.js index a53fef6c9534..0dca2c9a6e7c 100644 --- a/packages/api/src/cache/__tests__/deleteCacheKey.test.js +++ b/packages/api/src/cache/__tests__/deleteCacheKey.test.js @@ -1,3 +1,5 @@ +import { describe, it, expect } from 'vitest' + import InMemoryClient from '../clients/InMemoryClient' import { createCache } from '../index' diff --git a/packages/api/src/cache/__tests__/disconnect.test.ts b/packages/api/src/cache/__tests__/disconnect.test.ts index c7998ffc1ed0..c5a8904d1031 100644 --- a/packages/api/src/cache/__tests__/disconnect.test.ts +++ b/packages/api/src/cache/__tests__/disconnect.test.ts @@ -1,20 +1,22 @@ +import { describe, beforeEach, it, expect, vi } from 'vitest' + import InMemoryClient from '../clients/InMemoryClient' import { CacheTimeoutError } from '../errors' import { createCache } from '../index' describe('client.disconnect', () => { beforeEach(() => { - jest.clearAllMocks() + vi.clearAllMocks() }) it('attempts to disconnect on timeout error', async () => { const client = new InMemoryClient() const { cache } = createCache(client) - const getSpy = jest.spyOn(client, 'get') + const getSpy = vi.spyOn(client, 'get') getSpy.mockImplementation(() => { throw new CacheTimeoutError() }) - const disconnectSpy = jest.spyOn(client, 'disconnect') + const disconnectSpy = vi.spyOn(client, 'disconnect') await cache('test', () => { return { bar: 'baz' } diff --git a/packages/api/src/cache/__tests__/shared.test.ts b/packages/api/src/cache/__tests__/shared.test.ts index 302d8e5d5e37..b036059457ee 100644 --- a/packages/api/src/cache/__tests__/shared.test.ts +++ b/packages/api/src/cache/__tests__/shared.test.ts @@ -1,3 +1,5 @@ +import { describe, it, expect } from 'vitest' + import { createCache, formatCacheKey, InMemoryClient } from '../index' describe('exports', () => { diff --git a/packages/api/src/logger/logger.test.ts b/packages/api/src/logger/logger.test.ts index 42a1b9ce0c12..5663f9e235f4 100644 --- a/packages/api/src/logger/logger.test.ts +++ b/packages/api/src/logger/logger.test.ts @@ -3,6 +3,7 @@ import os from 'os' import { join } from 'path' import split from 'split2' +import { describe, test, expect } from 'vitest' const pid = process.pid const hostname = os.hostname() diff --git a/packages/api/src/validations/__tests__/validations.test.js b/packages/api/src/validations/__tests__/validations.test.js index 79ffdc2e819f..a411a8c4a3d3 100644 --- a/packages/api/src/validations/__tests__/validations.test.js +++ b/packages/api/src/validations/__tests__/validations.test.js @@ -1,3 +1,5 @@ +import { describe, it, expect, vi, beforeEach } from 'vitest' + import * as ValidationErrors from '../errors' import { validate, @@ -1153,7 +1155,7 @@ describe('validate', () => { describe('validateWithSync', () => { it('runs a custom function as a validation', () => { - const validateFunction = jest.fn() + const validateFunction = vi.fn() validateWithSync(validateFunction) expect(validateFunction).toBeCalledWith() @@ -1186,7 +1188,7 @@ describe('validateWithSync', () => { describe('validateWith', () => { it('runs a custom function as a validation', () => { - const validateFunction = jest.fn() + const validateFunction = vi.fn() validateWith(validateFunction) expect(validateFunction).toBeCalledWith() @@ -1220,9 +1222,9 @@ describe('validateWith', () => { // the actual methods of an instance of the class // // mockFindFirst.mockImplementation() to change what `findFirst()` would return -const mockFindFirst = jest.fn() -jest.mock('@prisma/client', () => ({ - PrismaClient: jest.fn(() => ({ +const mockFindFirst = vi.fn() +vi.mock('@prisma/client', () => ({ + PrismaClient: vi.fn(() => ({ $transaction: async (func) => func({ user: { @@ -1309,7 +1311,7 @@ describe('validateUniqueness', () => { }) it('uses the given prisma client', async () => { - const mockFindFirstOther = jest.fn() + const mockFindFirstOther = vi.fn() mockFindFirstOther.mockImplementation(() => ({ id: 2, email: 'rob@redwoodjs.com', diff --git a/packages/api/src/webhooks/webhooks.test.ts b/packages/api/src/webhooks/webhooks.test.ts index 32cc8434765b..2e479b4d7d6c 100644 --- a/packages/api/src/webhooks/webhooks.test.ts +++ b/packages/api/src/webhooks/webhooks.test.ts @@ -1,4 +1,5 @@ import type { APIGatewayProxyEvent } from 'aws-lambda' +import { beforeEach, afterEach, describe, test, expect, vi } from 'vitest' import { signPayload, @@ -44,11 +45,11 @@ const buildEvent = ({ } beforeEach(() => { - jest.spyOn(console, 'warn').mockImplementation(jest.fn()) + vi.spyOn(console, 'warn').mockImplementation(vi.fn()) }) afterEach(() => { - jest.spyOn(console, 'warn').mockRestore() + vi.spyOn(console, 'warn').mockRestore() }) describe('webhooks', () => { diff --git a/packages/api/vitest.config.mts b/packages/api/vitest.config.mts new file mode 100644 index 000000000000..b9f8b16ad6ca --- /dev/null +++ b/packages/api/vitest.config.mts @@ -0,0 +1,13 @@ +import { defineConfig } from 'vitest/config' + +export default defineConfig({ + test: { + sequence: { + hooks: 'list', + }, + setupFiles: [ + './vitest.setup.mts' + ], + logHeapUsage: true, + }, +}) diff --git a/packages/api/jest.config.js b/packages/api/vitest.setup.mts similarity index 67% rename from packages/api/jest.config.js rename to packages/api/vitest.setup.mts index 9f2758c52f1b..05aacbc43fb7 100644 --- a/packages/api/jest.config.js +++ b/packages/api/vitest.setup.mts @@ -1,5 +1,4 @@ -module.exports = {} - +// Set the default webhook secret for all tests process.env = Object.assign(process.env, { WEBHOOK_SECRET: 'MY_VOICE_IS_MY_PASSPORT_VERIFY_ME', }) diff --git a/yarn.lock b/yarn.lock index 365f69fa3c67..1d077623bbd0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2393,6 +2393,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/aix-ppc64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/aix-ppc64@npm:0.19.11" + conditions: os=aix & cpu=ppc64 + languageName: node + linkType: hard + "@esbuild/android-arm64@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/android-arm64@npm:0.18.20" @@ -2400,6 +2407,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/android-arm64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/android-arm64@npm:0.19.11" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/android-arm64@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/android-arm64@npm:0.19.9" @@ -2414,6 +2428,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/android-arm@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/android-arm@npm:0.19.11" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + "@esbuild/android-arm@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/android-arm@npm:0.19.9" @@ -2428,6 +2449,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/android-x64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/android-x64@npm:0.19.11" + conditions: os=android & cpu=x64 + languageName: node + linkType: hard + "@esbuild/android-x64@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/android-x64@npm:0.19.9" @@ -2442,6 +2470,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/darwin-arm64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/darwin-arm64@npm:0.19.11" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/darwin-arm64@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/darwin-arm64@npm:0.19.9" @@ -2456,6 +2491,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/darwin-x64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/darwin-x64@npm:0.19.11" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + "@esbuild/darwin-x64@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/darwin-x64@npm:0.19.9" @@ -2470,6 +2512,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/freebsd-arm64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/freebsd-arm64@npm:0.19.11" + conditions: os=freebsd & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/freebsd-arm64@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/freebsd-arm64@npm:0.19.9" @@ -2484,6 +2533,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/freebsd-x64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/freebsd-x64@npm:0.19.11" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + "@esbuild/freebsd-x64@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/freebsd-x64@npm:0.19.9" @@ -2498,6 +2554,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-arm64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/linux-arm64@npm:0.19.11" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/linux-arm64@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/linux-arm64@npm:0.19.9" @@ -2512,6 +2575,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-arm@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/linux-arm@npm:0.19.11" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + "@esbuild/linux-arm@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/linux-arm@npm:0.19.9" @@ -2526,6 +2596,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-ia32@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/linux-ia32@npm:0.19.11" + conditions: os=linux & cpu=ia32 + languageName: node + linkType: hard + "@esbuild/linux-ia32@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/linux-ia32@npm:0.19.9" @@ -2540,6 +2617,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-loong64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/linux-loong64@npm:0.19.11" + conditions: os=linux & cpu=loong64 + languageName: node + linkType: hard + "@esbuild/linux-loong64@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/linux-loong64@npm:0.19.9" @@ -2554,6 +2638,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-mips64el@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/linux-mips64el@npm:0.19.11" + conditions: os=linux & cpu=mips64el + languageName: node + linkType: hard + "@esbuild/linux-mips64el@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/linux-mips64el@npm:0.19.9" @@ -2568,6 +2659,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-ppc64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/linux-ppc64@npm:0.19.11" + conditions: os=linux & cpu=ppc64 + languageName: node + linkType: hard + "@esbuild/linux-ppc64@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/linux-ppc64@npm:0.19.9" @@ -2582,6 +2680,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-riscv64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/linux-riscv64@npm:0.19.11" + conditions: os=linux & cpu=riscv64 + languageName: node + linkType: hard + "@esbuild/linux-riscv64@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/linux-riscv64@npm:0.19.9" @@ -2596,6 +2701,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-s390x@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/linux-s390x@npm:0.19.11" + conditions: os=linux & cpu=s390x + languageName: node + linkType: hard + "@esbuild/linux-s390x@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/linux-s390x@npm:0.19.9" @@ -2610,6 +2722,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-x64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/linux-x64@npm:0.19.11" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + "@esbuild/linux-x64@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/linux-x64@npm:0.19.9" @@ -2624,6 +2743,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/netbsd-x64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/netbsd-x64@npm:0.19.11" + conditions: os=netbsd & cpu=x64 + languageName: node + linkType: hard + "@esbuild/netbsd-x64@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/netbsd-x64@npm:0.19.9" @@ -2638,6 +2764,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/openbsd-x64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/openbsd-x64@npm:0.19.11" + conditions: os=openbsd & cpu=x64 + languageName: node + linkType: hard + "@esbuild/openbsd-x64@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/openbsd-x64@npm:0.19.9" @@ -2652,6 +2785,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/sunos-x64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/sunos-x64@npm:0.19.11" + conditions: os=sunos & cpu=x64 + languageName: node + linkType: hard + "@esbuild/sunos-x64@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/sunos-x64@npm:0.19.9" @@ -2666,6 +2806,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/win32-arm64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/win32-arm64@npm:0.19.11" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/win32-arm64@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/win32-arm64@npm:0.19.9" @@ -2680,6 +2827,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/win32-ia32@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/win32-ia32@npm:0.19.11" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + "@esbuild/win32-ia32@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/win32-ia32@npm:0.19.9" @@ -2694,6 +2848,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/win32-x64@npm:0.19.11": + version: 0.19.11 + resolution: "@esbuild/win32-x64@npm:0.19.11" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@esbuild/win32-x64@npm:0.19.9": version: 0.19.9 resolution: "@esbuild/win32-x64@npm:0.19.9" @@ -7393,7 +7554,6 @@ __metadata: "@whatwg-node/fetch": "npm:0.9.14" core-js: "npm:3.34.0" humanize-string: "npm:2.1.0" - jest: "npm:29.7.0" jsonwebtoken: "npm:9.0.2" memjs: "npm:1.3.1" pascalcase: "npm:1.0.0" @@ -7403,6 +7563,7 @@ __metadata: title-case: "npm:3.0.3" ts-toolbelt: "npm:9.6.0" typescript: "npm:5.3.3" + vitest: "npm:1.2.1" peerDependencies: memjs: 1.3.1 redis: 4.6.7 @@ -8783,6 +8944,97 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-android-arm-eabi@npm:4.9.5": + version: 4.9.5 + resolution: "@rollup/rollup-android-arm-eabi@npm:4.9.5" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@rollup/rollup-android-arm64@npm:4.9.5": + version: 4.9.5 + resolution: "@rollup/rollup-android-arm64@npm:4.9.5" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-darwin-arm64@npm:4.9.5": + version: 4.9.5 + resolution: "@rollup/rollup-darwin-arm64@npm:4.9.5" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-darwin-x64@npm:4.9.5": + version: 4.9.5 + resolution: "@rollup/rollup-darwin-x64@npm:4.9.5" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm-gnueabihf@npm:4.9.5": + version: 4.9.5 + resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.9.5" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-gnu@npm:4.9.5": + version: 4.9.5 + resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.9.5" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-musl@npm:4.9.5": + version: 4.9.5 + resolution: "@rollup/rollup-linux-arm64-musl@npm:4.9.5" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-riscv64-gnu@npm:4.9.5": + version: 4.9.5 + resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.9.5" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-x64-gnu@npm:4.9.5": + version: 4.9.5 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.9.5" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-x64-musl@npm:4.9.5": + version: 4.9.5 + resolution: "@rollup/rollup-linux-x64-musl@npm:4.9.5" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-win32-arm64-msvc@npm:4.9.5": + version: 4.9.5 + resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.9.5" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-win32-ia32-msvc@npm:4.9.5": + version: 4.9.5 + resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.9.5" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@rollup/rollup-win32-x64-msvc@npm:4.9.5": + version: 4.9.5 + resolution: "@rollup/rollup-win32-x64-msvc@npm:4.9.5" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@sdl-codegen/node@npm:0.0.10": version: 0.0.10 resolution: "@sdl-codegen/node@npm:0.0.10" @@ -11629,6 +11881,60 @@ __metadata: languageName: node linkType: hard +"@vitest/expect@npm:1.2.1": + version: 1.2.1 + resolution: "@vitest/expect@npm:1.2.1" + dependencies: + "@vitest/spy": "npm:1.2.1" + "@vitest/utils": "npm:1.2.1" + chai: "npm:^4.3.10" + checksum: ee44ba89db92698cab9b5464ce5b7f0da57a0b4809f98545dede2af1237408ecca0a261f867dce280ad7a4cb1eca5d6c677a27e784d631554eae9ecfd19926cf + languageName: node + linkType: hard + +"@vitest/runner@npm:1.2.1": + version: 1.2.1 + resolution: "@vitest/runner@npm:1.2.1" + dependencies: + "@vitest/utils": "npm:1.2.1" + p-limit: "npm:^5.0.0" + pathe: "npm:^1.1.1" + checksum: 19f1c738eecfc27220392fda180c5087cda297893c93490a3ef7dbb1cbb0c1fc57aa4bc9f7e7d5ef1b4573b31dd277236529fb61d420b640f0024fae5a26c6f0 + languageName: node + linkType: hard + +"@vitest/snapshot@npm:1.2.1": + version: 1.2.1 + resolution: "@vitest/snapshot@npm:1.2.1" + dependencies: + magic-string: "npm:^0.30.5" + pathe: "npm:^1.1.1" + pretty-format: "npm:^29.7.0" + checksum: c92a1291c8b8579df640acb39863a5a49dd797a68b60482868cccf780d1acda44e31e1b64e5ed6788a5274a1990192d3901243399934f31ec5eed7fe32ff4ca9 + languageName: node + linkType: hard + +"@vitest/spy@npm:1.2.1": + version: 1.2.1 + resolution: "@vitest/spy@npm:1.2.1" + dependencies: + tinyspy: "npm:^2.2.0" + checksum: 1382e3641423fe85791d9a6c82b0abac88beea53a65f01355134d22503aa723760f00f0e52807bc1ff99bd342257d3f94e83da29e0bbfc17d76ebb69403e43c6 + languageName: node + linkType: hard + +"@vitest/utils@npm:1.2.1": + version: 1.2.1 + resolution: "@vitest/utils@npm:1.2.1" + dependencies: + diff-sequences: "npm:^29.6.3" + estree-walker: "npm:^3.0.3" + loupe: "npm:^2.3.7" + pretty-format: "npm:^29.7.0" + checksum: 8943d48e0b2c6f266e4f5eab549787dc7506841e95cb498b17521a339032a99ddd3f4df8ba9844dfb9b80693fb58850f0bda74ea15d1356c644caedfc864cc37 + languageName: node + linkType: hard + "@vscode/ripgrep@npm:1.15.6": version: 1.15.6 resolution: "@vscode/ripgrep@npm:1.15.6" @@ -12335,6 +12641,13 @@ __metadata: languageName: node linkType: hard +"acorn-walk@npm:^8.3.2": + version: 8.3.2 + resolution: "acorn-walk@npm:8.3.2" + checksum: 7e2a8dad5480df7f872569b9dccff2f3da7e65f5353686b1d6032ab9f4ddf6e3a2cb83a9b52cf50b1497fd522154dda92f0abf7153290cc79cd14721ff121e52 + languageName: node + linkType: hard + "acorn@npm:8.11.2, acorn@npm:^8.0.4, acorn@npm:^8.1.0, acorn@npm:^8.11.0, acorn@npm:^8.4.1, acorn@npm:^8.5.0, acorn@npm:^8.7.1, acorn@npm:^8.8.1, acorn@npm:^8.8.2, acorn@npm:^8.9.0": version: 8.11.2 resolution: "acorn@npm:8.11.2" @@ -12362,6 +12675,15 @@ __metadata: languageName: node linkType: hard +"acorn@npm:^8.10.0, acorn@npm:^8.11.3": + version: 8.11.3 + resolution: "acorn@npm:8.11.3" + bin: + acorn: bin/acorn + checksum: 3ff155f8812e4a746fee8ecff1f227d527c4c45655bb1fad6347c3cb58e46190598217551b1500f18542d2bbe5c87120cb6927f5a074a59166fbdd9468f0a299 + languageName: node + linkType: hard + "add-stream@npm:^1.0.0": version: 1.0.0 resolution: "add-stream@npm:1.0.0" @@ -13058,6 +13380,13 @@ __metadata: languageName: node linkType: hard +"assertion-error@npm:^1.1.0": + version: 1.1.0 + resolution: "assertion-error@npm:1.1.0" + checksum: 25456b2aa333250f01143968e02e4884a34588a8538fbbf65c91a637f1dbfb8069249133cd2f4e530f10f624d206a664e7df30207830b659e9f5298b00a4099b + languageName: node + linkType: hard + "assign-symbols@npm:^1.0.0": version: 1.0.0 resolution: "assign-symbols@npm:1.0.0" @@ -14132,6 +14461,13 @@ __metadata: languageName: node linkType: hard +"cac@npm:^6.7.14": + version: 6.7.14 + resolution: "cac@npm:6.7.14" + checksum: 4ee06aaa7bab8981f0d54e5f5f9d4adcd64058e9697563ce336d8a3878ed018ee18ebe5359b2430eceae87e0758e62ea2019c3f52ae6e211b1bd2e133856cd10 + languageName: node + linkType: hard + "cacache@npm:^12.0.2": version: 12.0.4 resolution: "cacache@npm:12.0.4" @@ -14405,6 +14741,21 @@ __metadata: languageName: node linkType: hard +"chai@npm:^4.3.10": + version: 4.4.1 + resolution: "chai@npm:4.4.1" + dependencies: + assertion-error: "npm:^1.1.0" + check-error: "npm:^1.0.3" + deep-eql: "npm:^4.1.3" + get-func-name: "npm:^2.0.2" + loupe: "npm:^2.3.6" + pathval: "npm:^1.1.1" + type-detect: "npm:^4.0.8" + checksum: 91590a8fe18bd6235dece04ccb2d5b4ecec49984b50924499bdcd7a95c02cb1fd2a689407c19bb854497bde534ef57525cfad6c7fdd2507100fd802fbc2aefbd + languageName: node + linkType: hard + "chalk@npm:4.1.0": version: 4.1.0 resolution: "chalk@npm:4.1.0" @@ -14537,6 +14888,15 @@ __metadata: languageName: node linkType: hard +"check-error@npm:^1.0.3": + version: 1.0.3 + resolution: "check-error@npm:1.0.3" + dependencies: + get-func-name: "npm:^2.0.2" + checksum: 94aa37a7315c0e8a83d0112b5bfb5a8624f7f0f81057c73e4707729cdd8077166c6aefb3d8e2b92c63ee130d4a2ff94bad46d547e12f3238cc1d78342a973841 + languageName: node + linkType: hard + "check-more-types@npm:^2.24.0": version: 2.24.0 resolution: "check-more-types@npm:2.24.0" @@ -16235,6 +16595,15 @@ __metadata: languageName: node linkType: hard +"deep-eql@npm:^4.1.3": + version: 4.1.3 + resolution: "deep-eql@npm:4.1.3" + dependencies: + type-detect: "npm:^4.0.0" + checksum: ff34e8605d8253e1bf9fe48056e02c6f347b81d9b5df1c6650a1b0f6f847b4a86453b16dc226b34f853ef14b626e85d04e081b022e20b00cd7d54f079ce9bbdd + languageName: node + linkType: hard + "deep-equal@npm:^2.0.5": version: 2.2.1 resolution: "deep-equal@npm:2.2.1" @@ -17521,6 +17890,86 @@ __metadata: languageName: node linkType: hard +"esbuild@npm:^0.19.3": + version: 0.19.11 + resolution: "esbuild@npm:0.19.11" + dependencies: + "@esbuild/aix-ppc64": "npm:0.19.11" + "@esbuild/android-arm": "npm:0.19.11" + "@esbuild/android-arm64": "npm:0.19.11" + "@esbuild/android-x64": "npm:0.19.11" + "@esbuild/darwin-arm64": "npm:0.19.11" + "@esbuild/darwin-x64": "npm:0.19.11" + "@esbuild/freebsd-arm64": "npm:0.19.11" + "@esbuild/freebsd-x64": "npm:0.19.11" + "@esbuild/linux-arm": "npm:0.19.11" + "@esbuild/linux-arm64": "npm:0.19.11" + "@esbuild/linux-ia32": "npm:0.19.11" + "@esbuild/linux-loong64": "npm:0.19.11" + "@esbuild/linux-mips64el": "npm:0.19.11" + "@esbuild/linux-ppc64": "npm:0.19.11" + "@esbuild/linux-riscv64": "npm:0.19.11" + "@esbuild/linux-s390x": "npm:0.19.11" + "@esbuild/linux-x64": "npm:0.19.11" + "@esbuild/netbsd-x64": "npm:0.19.11" + "@esbuild/openbsd-x64": "npm:0.19.11" + "@esbuild/sunos-x64": "npm:0.19.11" + "@esbuild/win32-arm64": "npm:0.19.11" + "@esbuild/win32-ia32": "npm:0.19.11" + "@esbuild/win32-x64": "npm:0.19.11" + dependenciesMeta: + "@esbuild/aix-ppc64": + optional: true + "@esbuild/android-arm": + optional: true + "@esbuild/android-arm64": + optional: true + "@esbuild/android-x64": + optional: true + "@esbuild/darwin-arm64": + optional: true + "@esbuild/darwin-x64": + optional: true + "@esbuild/freebsd-arm64": + optional: true + "@esbuild/freebsd-x64": + optional: true + "@esbuild/linux-arm": + optional: true + "@esbuild/linux-arm64": + optional: true + "@esbuild/linux-ia32": + optional: true + "@esbuild/linux-loong64": + optional: true + "@esbuild/linux-mips64el": + optional: true + "@esbuild/linux-ppc64": + optional: true + "@esbuild/linux-riscv64": + optional: true + "@esbuild/linux-s390x": + optional: true + "@esbuild/linux-x64": + optional: true + "@esbuild/netbsd-x64": + optional: true + "@esbuild/openbsd-x64": + optional: true + "@esbuild/sunos-x64": + optional: true + "@esbuild/win32-arm64": + optional: true + "@esbuild/win32-ia32": + optional: true + "@esbuild/win32-x64": + optional: true + bin: + esbuild: bin/esbuild + checksum: 0fd913124089e26d30ec30f73b94d4ef9607935251df3253f869106980a5d4c78aa517738c8746abe6e933262e91a77d31427ce468ed8fc7fe498a20f7f92fbc + languageName: node + linkType: hard + "escalade@npm:^3.1.1": version: 3.1.1 resolution: "escalade@npm:3.1.1" @@ -17926,6 +18375,15 @@ __metadata: languageName: node linkType: hard +"estree-walker@npm:^3.0.3": + version: 3.0.3 + resolution: "estree-walker@npm:3.0.3" + dependencies: + "@types/estree": "npm:^1.0.0" + checksum: c12e3c2b2642d2bcae7d5aa495c60fa2f299160946535763969a1c83fc74518ffa9c2cd3a8b69ac56aea547df6a8aac25f729a342992ef0bbac5f1c73e78995d + languageName: node + linkType: hard + "esutils@npm:^2.0.2": version: 2.0.3 resolution: "esutils@npm:2.0.3" @@ -18059,6 +18517,23 @@ __metadata: languageName: node linkType: hard +"execa@npm:^8.0.1": + version: 8.0.1 + resolution: "execa@npm:8.0.1" + dependencies: + cross-spawn: "npm:^7.0.3" + get-stream: "npm:^8.0.1" + human-signals: "npm:^5.0.0" + is-stream: "npm:^3.0.0" + merge-stream: "npm:^2.0.0" + npm-run-path: "npm:^5.1.0" + onetime: "npm:^6.0.0" + signal-exit: "npm:^4.1.0" + strip-final-newline: "npm:^3.0.0" + checksum: 2c52d8775f5bf103ce8eec9c7ab3059909ba350a5164744e9947ed14a53f51687c040a250bda833f906d1283aa8803975b84e6c8f7a7c42f99dc8ef80250d1af + languageName: node + linkType: hard + "executable@npm:^4.1.1": version: 4.1.1 resolution: "executable@npm:4.1.1" @@ -19272,6 +19747,13 @@ __metadata: languageName: node linkType: hard +"get-func-name@npm:^2.0.1, get-func-name@npm:^2.0.2": + version: 2.0.2 + resolution: "get-func-name@npm:2.0.2" + checksum: 89830fd07623fa73429a711b9daecdb304386d237c71268007f788f113505ef1d4cc2d0b9680e072c5082490aec9df5d7758bf5ac6f1c37062855e8e3dc0b9df + languageName: node + linkType: hard + "get-intrinsic@npm:^1.0.2, get-intrinsic@npm:^1.1.1, get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.0, get-intrinsic@npm:^1.2.1, get-intrinsic@npm:^1.2.2": version: 1.2.2 resolution: "get-intrinsic@npm:1.2.2" @@ -19368,6 +19850,13 @@ __metadata: languageName: node linkType: hard +"get-stream@npm:^8.0.1": + version: 8.0.1 + resolution: "get-stream@npm:8.0.1" + checksum: 5c2181e98202b9dae0bb4a849979291043e5892eb40312b47f0c22b9414fc9b28a3b6063d2375705eb24abc41ecf97894d9a51f64ff021511b504477b27b4290 + languageName: node + linkType: hard + "get-symbol-description@npm:^1.0.0": version: 1.0.0 resolution: "get-symbol-description@npm:1.0.0" @@ -20535,6 +21024,13 @@ __metadata: languageName: node linkType: hard +"human-signals@npm:^5.0.0": + version: 5.0.0 + resolution: "human-signals@npm:5.0.0" + checksum: 5a9359073fe17a8b58e5a085e9a39a950366d9f00217c4ff5878bd312e09d80f460536ea6a3f260b5943a01fe55c158d1cea3fc7bee3d0520aeef04f6d915c82 + languageName: node + linkType: hard + "humanize-ms@npm:^1.2.1": version: 1.2.1 resolution: "humanize-ms@npm:1.2.1" @@ -21446,6 +21942,13 @@ __metadata: languageName: node linkType: hard +"is-stream@npm:^3.0.0": + version: 3.0.0 + resolution: "is-stream@npm:3.0.0" + checksum: eb2f7127af02ee9aa2a0237b730e47ac2de0d4e76a4a905a50a11557f2339df5765eaea4ceb8029f1efa978586abe776908720bfcb1900c20c6ec5145f6f29d8 + languageName: node + linkType: hard + "is-string@npm:^1.0.5, is-string@npm:^1.0.7": version: 1.0.7 resolution: "is-string@npm:1.0.7" @@ -22679,7 +23182,7 @@ __metadata: languageName: node linkType: hard -"jsonc-parser@npm:3.2.0": +"jsonc-parser@npm:3.2.0, jsonc-parser@npm:^3.2.0": version: 3.2.0 resolution: "jsonc-parser@npm:3.2.0" checksum: 5a12d4d04dad381852476872a29dcee03a57439574e4181d91dca71904fcdcc5e8e4706c0a68a2c61ad9810e1e1c5806b5100d52d3e727b78f5cdc595401045b @@ -23310,6 +23813,16 @@ __metadata: languageName: node linkType: hard +"local-pkg@npm:^0.5.0": + version: 0.5.0 + resolution: "local-pkg@npm:0.5.0" + dependencies: + mlly: "npm:^1.4.2" + pkg-types: "npm:^1.0.3" + checksum: f61cbd00d7689f275558b1a45c7ff2a3ddf8472654123ed880215677b9adfa729f1081e50c27ffb415cdb9fa706fb755fec5e23cdd965be375c8059e87ff1cc9 + languageName: node + linkType: hard + "locate-path@npm:^2.0.0": version: 2.0.0 resolution: "locate-path@npm:2.0.0" @@ -23620,6 +24133,15 @@ __metadata: languageName: node linkType: hard +"loupe@npm:^2.3.6, loupe@npm:^2.3.7": + version: 2.3.7 + resolution: "loupe@npm:2.3.7" + dependencies: + get-func-name: "npm:^2.0.1" + checksum: 71a781c8fc21527b99ed1062043f1f2bb30bdaf54fa4cf92463427e1718bc6567af2988300bc243c1f276e4f0876f29e3cbf7b58106fdc186915687456ce5bf4 + languageName: node + linkType: hard + "lower-case-first@npm:^2.0.2": version: 2.0.2 resolution: "lower-case-first@npm:2.0.2" @@ -24232,6 +24754,13 @@ __metadata: languageName: node linkType: hard +"mimic-fn@npm:^4.0.0": + version: 4.0.0 + resolution: "mimic-fn@npm:4.0.0" + checksum: de9cc32be9996fd941e512248338e43407f63f6d497abe8441fa33447d922e927de54d4cc3c1a3c6d652857acd770389d5a3823f311a744132760ce2be15ccbf + languageName: node + linkType: hard + "mimic-response@npm:^1.0.0, mimic-response@npm:^1.0.1": version: 1.0.1 resolution: "mimic-response@npm:1.0.1" @@ -24937,6 +25466,18 @@ __metadata: languageName: node linkType: hard +"mlly@npm:^1.2.0, mlly@npm:^1.4.2": + version: 1.5.0 + resolution: "mlly@npm:1.5.0" + dependencies: + acorn: "npm:^8.11.3" + pathe: "npm:^1.1.2" + pkg-types: "npm:^1.0.3" + ufo: "npm:^1.3.2" + checksum: 0861d64f13e8e6f99e4897b652b553ded4d4b9e7b011d6afd7141e013b77ed9b9be0cd76e60c46c60c56cc9b8e27061165e5696179ba9f4161c24d162db7b621 + languageName: node + linkType: hard + "modify-values@npm:^1.0.1": version: 1.0.1 resolution: "modify-values@npm:1.0.1" @@ -25104,6 +25645,15 @@ __metadata: languageName: node linkType: hard +"nanoid@npm:^3.3.7": + version: 3.3.7 + resolution: "nanoid@npm:3.3.7" + bin: + nanoid: bin/nanoid.cjs + checksum: e3fb661aa083454f40500473bb69eedb85dc160e763150b9a2c567c7e9ff560ce028a9f833123b618a6ea742e311138b591910e795614a629029e86e180660f3 + languageName: node + linkType: hard + "nanomatch@npm:^1.2.9": version: 1.2.13 resolution: "nanomatch@npm:1.2.13" @@ -25705,6 +26255,15 @@ __metadata: languageName: node linkType: hard +"npm-run-path@npm:^5.1.0": + version: 5.2.0 + resolution: "npm-run-path@npm:5.2.0" + dependencies: + path-key: "npm:^4.0.0" + checksum: 7963c1f98e42afebe9524a08b0881477ec145aab34f6018842a315422b25ad40e015bdee709b697571e5efda2ecfa2640ee917d92674e4de1166fa3532a211b1 + languageName: node + linkType: hard + "npmlog@npm:^6.0.0, npmlog@npm:^6.0.2": version: 6.0.2 resolution: "npmlog@npm:6.0.2" @@ -26075,6 +26634,15 @@ __metadata: languageName: node linkType: hard +"onetime@npm:^6.0.0": + version: 6.0.0 + resolution: "onetime@npm:6.0.0" + dependencies: + mimic-fn: "npm:^4.0.0" + checksum: 4eef7c6abfef697dd4479345a4100c382d73c149d2d56170a54a07418c50816937ad09500e1ed1e79d235989d073a9bade8557122aee24f0576ecde0f392bb6c + languageName: node + linkType: hard + "open@npm:^8.0.4, open@npm:^8.0.9, open@npm:^8.4.0": version: 8.4.2 resolution: "open@npm:8.4.2" @@ -26247,6 +26815,15 @@ __metadata: languageName: node linkType: hard +"p-limit@npm:^5.0.0": + version: 5.0.0 + resolution: "p-limit@npm:5.0.0" + dependencies: + yocto-queue: "npm:^1.0.0" + checksum: 574e93b8895a26e8485eb1df7c4b58a1a6e8d8ae41b1750cc2cc440922b3d306044fc6e9a7f74578a883d46802d9db72b30f2e612690fcef838c173261b1ed83 + languageName: node + linkType: hard + "p-locate@npm:^2.0.0": version: 2.0.0 resolution: "p-locate@npm:2.0.0" @@ -26720,6 +27297,13 @@ __metadata: languageName: node linkType: hard +"path-key@npm:^4.0.0": + version: 4.0.0 + resolution: "path-key@npm:4.0.0" + checksum: 794efeef32863a65ac312f3c0b0a99f921f3e827ff63afa5cb09a377e202c262b671f7b3832a4e64731003fa94af0263713962d317b9887bd1e0c48a342efba3 + languageName: node + linkType: hard + "path-parse@npm:^1.0.7": version: 1.0.7 resolution: "path-parse@npm:1.0.7" @@ -26790,6 +27374,20 @@ __metadata: languageName: node linkType: hard +"pathe@npm:^1.1.1, pathe@npm:^1.1.2": + version: 1.1.2 + resolution: "pathe@npm:1.1.2" + checksum: 64ee0a4e587fb0f208d9777a6c56e4f9050039268faaaaecd50e959ef01bf847b7872785c36483fa5cdcdbdfdb31fef2ff222684d4fc21c330ab60395c681897 + languageName: node + linkType: hard + +"pathval@npm:^1.1.1": + version: 1.1.1 + resolution: "pathval@npm:1.1.1" + checksum: f63e1bc1b33593cdf094ed6ff5c49c1c0dc5dc20a646ca9725cc7fe7cd9995002d51d5685b9b2ec6814342935748b711bafa840f84c0bb04e38ff40a335c94dc + languageName: node + linkType: hard + "pause-stream@npm:0.0.11": version: 0.0.11 resolution: "pause-stream@npm:0.0.11" @@ -26990,6 +27588,17 @@ __metadata: languageName: node linkType: hard +"pkg-types@npm:^1.0.3": + version: 1.0.3 + resolution: "pkg-types@npm:1.0.3" + dependencies: + jsonc-parser: "npm:^3.2.0" + mlly: "npm:^1.2.0" + pathe: "npm:^1.1.0" + checksum: 7f692ff2005f51b8721381caf9bdbc7f5461506ba19c34f8631660a215c8de5e6dca268f23a319dd180b8f7c47a0dc6efea14b376c485ff99e98d810b8f786c4 + languageName: node + linkType: hard + "pkg-up@npm:^3.1.0": version: 3.1.0 resolution: "pkg-up@npm:3.1.0" @@ -27433,6 +28042,17 @@ __metadata: languageName: node linkType: hard +"postcss@npm:^8.4.32": + version: 8.4.33 + resolution: "postcss@npm:8.4.33" + dependencies: + nanoid: "npm:^3.3.7" + picocolors: "npm:^1.0.0" + source-map-js: "npm:^1.0.2" + checksum: 16eda83458fcd8a91bece287b5920c7f57164c3ea293e6c80d0ea71ce7843007bcd8592260a5160b9a7f02693e6ac93e2495b02d8c7596d3f3f72c1447e3ba79 + languageName: node + linkType: hard + "prelude-ls@npm:^1.2.1": version: 1.2.1 resolution: "prelude-ls@npm:1.2.1" @@ -29164,6 +29784,60 @@ __metadata: languageName: node linkType: hard +"rollup@npm:^4.2.0": + version: 4.9.5 + resolution: "rollup@npm:4.9.5" + dependencies: + "@rollup/rollup-android-arm-eabi": "npm:4.9.5" + "@rollup/rollup-android-arm64": "npm:4.9.5" + "@rollup/rollup-darwin-arm64": "npm:4.9.5" + "@rollup/rollup-darwin-x64": "npm:4.9.5" + "@rollup/rollup-linux-arm-gnueabihf": "npm:4.9.5" + "@rollup/rollup-linux-arm64-gnu": "npm:4.9.5" + "@rollup/rollup-linux-arm64-musl": "npm:4.9.5" + "@rollup/rollup-linux-riscv64-gnu": "npm:4.9.5" + "@rollup/rollup-linux-x64-gnu": "npm:4.9.5" + "@rollup/rollup-linux-x64-musl": "npm:4.9.5" + "@rollup/rollup-win32-arm64-msvc": "npm:4.9.5" + "@rollup/rollup-win32-ia32-msvc": "npm:4.9.5" + "@rollup/rollup-win32-x64-msvc": "npm:4.9.5" + "@types/estree": "npm:1.0.5" + fsevents: "npm:~2.3.2" + dependenciesMeta: + "@rollup/rollup-android-arm-eabi": + optional: true + "@rollup/rollup-android-arm64": + optional: true + "@rollup/rollup-darwin-arm64": + optional: true + "@rollup/rollup-darwin-x64": + optional: true + "@rollup/rollup-linux-arm-gnueabihf": + optional: true + "@rollup/rollup-linux-arm64-gnu": + optional: true + "@rollup/rollup-linux-arm64-musl": + optional: true + "@rollup/rollup-linux-riscv64-gnu": + optional: true + "@rollup/rollup-linux-x64-gnu": + optional: true + "@rollup/rollup-linux-x64-musl": + optional: true + "@rollup/rollup-win32-arm64-msvc": + optional: true + "@rollup/rollup-win32-ia32-msvc": + optional: true + "@rollup/rollup-win32-x64-msvc": + optional: true + fsevents: + optional: true + bin: + rollup: dist/bin/rollup + checksum: 7f241ad4028f32c1300eb8391493f192f622ed7e9564f993d8f3862be32dd995c8237f4691ea76327a323ef62808495a497eabf0c8fb0c6fa6556a69653a449f + languageName: node + linkType: hard + "root-workspace-0b6124@workspace:.": version: 0.0.0-use.local resolution: "root-workspace-0b6124@workspace:." @@ -29763,6 +30437,13 @@ __metadata: languageName: node linkType: hard +"siginfo@npm:^2.0.0": + version: 2.0.0 + resolution: "siginfo@npm:2.0.0" + checksum: 3def8f8e516fbb34cb6ae415b07ccc5d9c018d85b4b8611e3dc6f8be6d1899f693a4382913c9ed51a06babb5201639d76453ab297d1c54a456544acf5c892e34 + languageName: node + linkType: hard + "signal-exit@npm:3.0.7, signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": version: 3.0.7 resolution: "signal-exit@npm:3.0.7" @@ -29777,6 +30458,13 @@ __metadata: languageName: node linkType: hard +"signal-exit@npm:^4.1.0": + version: 4.1.0 + resolution: "signal-exit@npm:4.1.0" + checksum: 41602dce540e46d599edba9d9860193398d135f7ff72cab629db5171516cfae628d21e7bfccde1bbfdf11c48726bc2a6d1a8fb8701125852fbfda7cf19c6aa83 + languageName: node + linkType: hard + "signedsource@npm:^1.0.0": version: 1.0.0 resolution: "signedsource@npm:1.0.0" @@ -30304,6 +30992,13 @@ __metadata: languageName: node linkType: hard +"stackback@npm:0.0.2": + version: 0.0.2 + resolution: "stackback@npm:0.0.2" + checksum: 89a1416668f950236dd5ac9f9a6b2588e1b9b62b1b6ad8dff1bfc5d1a15dbf0aafc9b52d2226d00c28dffff212da464eaeebfc6b7578b9d180cef3e3782c5983 + languageName: node + linkType: hard + "stackframe@npm:^1.3.4": version: 1.3.4 resolution: "stackframe@npm:1.3.4" @@ -30352,6 +31047,13 @@ __metadata: languageName: node linkType: hard +"std-env@npm:^3.5.0": + version: 3.7.0 + resolution: "std-env@npm:3.7.0" + checksum: 60edf2d130a4feb7002974af3d5a5f3343558d1ccf8d9b9934d225c638606884db4a20d2fe6440a09605bca282af6b042ae8070a10490c0800d69e82e478f41e + languageName: node + linkType: hard + "stdin-discarder@npm:^0.1.0": version: 0.1.0 resolution: "stdin-discarder@npm:0.1.0" @@ -30669,6 +31371,13 @@ __metadata: languageName: node linkType: hard +"strip-final-newline@npm:^3.0.0": + version: 3.0.0 + resolution: "strip-final-newline@npm:3.0.0" + checksum: a771a17901427bac6293fd416db7577e2bc1c34a19d38351e9d5478c3c415f523f391003b42ed475f27e33a78233035df183525395f731d3bfb8cdcbd4da08ce + languageName: node + linkType: hard + "strip-indent@npm:^3.0.0": version: 3.0.0 resolution: "strip-indent@npm:3.0.0" @@ -30701,6 +31410,15 @@ __metadata: languageName: node linkType: hard +"strip-literal@npm:^1.3.0": + version: 1.3.0 + resolution: "strip-literal@npm:1.3.0" + dependencies: + acorn: "npm:^8.10.0" + checksum: 3c0c9ee41eb346e827eede61ef288457f53df30e3e6ff8b94fa81b636933b0c13ca4ea5c97d00a10d72d04be326da99ac819f8769f0c6407ba8177c98344a916 + languageName: node + linkType: hard + "strong-log-transformer@npm:2.1.0, strong-log-transformer@npm:^2.1.0": version: 2.1.0 resolution: "strong-log-transformer@npm:2.1.0" @@ -31235,6 +31953,27 @@ __metadata: languageName: node linkType: hard +"tinybench@npm:^2.5.1": + version: 2.6.0 + resolution: "tinybench@npm:2.6.0" + checksum: 60ea35699bf8bac9bc8cf279fa5877ab5b335b4673dcd07bf0fbbab9d7953a02c0ccded374677213eaa13aa147f54eb75d3230139ddbeec3875829ebe73db310 + languageName: node + linkType: hard + +"tinypool@npm:^0.8.1": + version: 0.8.2 + resolution: "tinypool@npm:0.8.2" + checksum: 8998626614172fc37c394e9a14e701dc437727fc6525488a4d4fd42044a4b2b59d6f076d750cbf5c699f79c58dd4e40599ab09e2f1ae0df4b23516b98c9c3055 + languageName: node + linkType: hard + +"tinyspy@npm:^2.2.0": + version: 2.2.0 + resolution: "tinyspy@npm:2.2.0" + checksum: 8c7b70748dd8590e85d52741db79243746c15bc03c92d75c23160a762142db577e7f53e360ba7300e321b12bca5c42dd2522a8dbeec6ba3830302573dd8516bc + languageName: node + linkType: hard + "title-case@npm:3.0.3, title-case@npm:^3.0.3": version: 3.0.3 resolution: "title-case@npm:3.0.3" @@ -31713,7 +32452,7 @@ __metadata: languageName: node linkType: hard -"type-detect@npm:4.0.8": +"type-detect@npm:4.0.8, type-detect@npm:^4.0.0, type-detect@npm:^4.0.8": version: 4.0.8 resolution: "type-detect@npm:4.0.8" checksum: 8fb9a51d3f365a7de84ab7f73b653534b61b622aa6800aecdb0f1095a4a646d3f5eb295322127b6573db7982afcd40ab492d038cf825a42093a58b1e1353e0bd @@ -31918,6 +32657,13 @@ __metadata: languageName: node linkType: hard +"ufo@npm:^1.3.2": + version: 1.3.2 + resolution: "ufo@npm:1.3.2" + checksum: 180f3dfcdf319b54fe0272780841c93cb08a024fc2ee5f95e63285c2a3c42d8b671cd3641e9a53aafccf100cf8466aa8c040ddfa0efea1fc1968c9bfb250a661 + languageName: node + linkType: hard + "uglify-js@npm:^3.1.4, uglify-js@npm:^3.5.1, uglify-js@npm:^3.7.7": version: 3.17.4 resolution: "uglify-js@npm:3.17.4" @@ -32560,6 +33306,21 @@ __metadata: languageName: node linkType: hard +"vite-node@npm:1.2.1": + version: 1.2.1 + resolution: "vite-node@npm:1.2.1" + dependencies: + cac: "npm:^6.7.14" + debug: "npm:^4.3.4" + pathe: "npm:^1.1.1" + picocolors: "npm:^1.0.0" + vite: "npm:^5.0.0" + bin: + vite-node: vite-node.mjs + checksum: 5c2393129299ecbbd0716ffc1de46479f4a7afa0d043d31e3175e69ceaaf0c363c637513fe5fa1e5e1c61ab8c55d82c7004f71a846ee8ded4d434a3370b4253f + languageName: node + linkType: hard + "vite@npm:4.5.1": version: 4.5.1 resolution: "vite@npm:4.5.1" @@ -32600,6 +33361,97 @@ __metadata: languageName: node linkType: hard +"vite@npm:^5.0.0": + version: 5.0.12 + resolution: "vite@npm:5.0.12" + dependencies: + esbuild: "npm:^0.19.3" + fsevents: "npm:~2.3.3" + postcss: "npm:^8.4.32" + rollup: "npm:^4.2.0" + peerDependencies: + "@types/node": ^18.0.0 || >=20.0.0 + less: "*" + lightningcss: ^1.21.0 + sass: "*" + stylus: "*" + sugarss: "*" + terser: ^5.4.0 + dependenciesMeta: + fsevents: + optional: true + peerDependenciesMeta: + "@types/node": + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + bin: + vite: bin/vite.js + checksum: c51b8e458851943c903fddde6973e720099ef8a5f364fb107cddade59c9e90f6d9ad98b61a7419cdfa0c6374236e10bff965d0c2d9e7b1790c68b874e5e7950c + languageName: node + linkType: hard + +"vitest@npm:1.2.1": + version: 1.2.1 + resolution: "vitest@npm:1.2.1" + dependencies: + "@vitest/expect": "npm:1.2.1" + "@vitest/runner": "npm:1.2.1" + "@vitest/snapshot": "npm:1.2.1" + "@vitest/spy": "npm:1.2.1" + "@vitest/utils": "npm:1.2.1" + acorn-walk: "npm:^8.3.2" + cac: "npm:^6.7.14" + chai: "npm:^4.3.10" + debug: "npm:^4.3.4" + execa: "npm:^8.0.1" + local-pkg: "npm:^0.5.0" + magic-string: "npm:^0.30.5" + pathe: "npm:^1.1.1" + picocolors: "npm:^1.0.0" + std-env: "npm:^3.5.0" + strip-literal: "npm:^1.3.0" + tinybench: "npm:^2.5.1" + tinypool: "npm:^0.8.1" + vite: "npm:^5.0.0" + vite-node: "npm:1.2.1" + why-is-node-running: "npm:^2.2.2" + peerDependencies: + "@edge-runtime/vm": "*" + "@types/node": ^18.0.0 || >=20.0.0 + "@vitest/browser": ^1.0.0 + "@vitest/ui": ^1.0.0 + happy-dom: "*" + jsdom: "*" + peerDependenciesMeta: + "@edge-runtime/vm": + optional: true + "@types/node": + optional: true + "@vitest/browser": + optional: true + "@vitest/ui": + optional: true + happy-dom: + optional: true + jsdom: + optional: true + bin: + vitest: vitest.mjs + checksum: eb1c8a6f1bd5cef85e701cbe45a11d3ebec50264ebd499d122f35928e40cd3729cdbef21b024491ba2c36fdd3122ca57e013725c67247c6cbd274c4790edccd5 + languageName: node + linkType: hard + "vm-browserify@npm:^1.0.1": version: 1.1.2 resolution: "vm-browserify@npm:1.1.2" @@ -33273,6 +34125,18 @@ __metadata: languageName: node linkType: hard +"why-is-node-running@npm:^2.2.2": + version: 2.2.2 + resolution: "why-is-node-running@npm:2.2.2" + dependencies: + siginfo: "npm:^2.0.0" + stackback: "npm:0.0.2" + bin: + why-is-node-running: cli.js + checksum: 805d57eb5d33f0fb4e36bae5dceda7fd8c6932c2aeb705e30003970488f1a2bc70029ee64be1a0e1531e2268b11e65606e88e5b71d667ea745e6dc48fc9014bd + languageName: node + linkType: hard + "wide-align@npm:^1.1.5": version: 1.1.5 resolution: "wide-align@npm:1.1.5" From 223171d7dfa2a817e336c0187c0132b8d7720814 Mon Sep 17 00:00:00 2001 From: Josh GM Walker <56300765+Josh-Walker-GM@users.noreply.github.com> Date: Sat, 20 Jan 2024 12:04:11 +0000 Subject: [PATCH 2/5] fix ci/nx workflows --- .github/workflows/ci.yml | 2 +- package.json | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0a6d830aa149..88060543a401 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -134,7 +134,7 @@ jobs: uses: SimenB/github-actions-cpu-cores@v2 - name: 🧪 Test - run: yarn test-ci ${{ steps.cpu-cores.outputs.count }} + run: yarn test-ci --minWorkers=1 --maxWorkers=${{ steps.cpu-cores.outputs.count }} build-lint-test-skip: needs: detect-changes diff --git a/package.json b/package.json index 6c9b2dd030b1..27c96b9ad2c6 100644 --- a/package.json +++ b/package.json @@ -34,8 +34,8 @@ "release:notes": "node ./tasks/release/generateReleaseNotes.mjs", "release:triage": "node ./tasks/release/triage/triage.mjs", "smoke-tests": "node ./tasks/smoke-tests/smoke-tests.mjs", - "test": "nx run-many -t test -- --colors --maxWorkers=4", - "test-ci": "nx run-many -t test -- --colors --maxWorkers", + "test": "nx run-many -t test -- --minWorkers=1 --maxWorkers=4", + "test-ci": "nx run-many -t test", "test:k6": "tsx ./tasks/k6-test/run-k6-tests.mts", "test:types": "tstyche" }, From 102c60a097429ea4061c30b20788d2a99abfe9ce Mon Sep 17 00:00:00 2001 From: Josh GM Walker <56300765+Josh-Walker-GM@users.noreply.github.com> Date: Sat, 20 Jan 2024 12:04:40 +0000 Subject: [PATCH 3/5] dedupe --- yarn.lock | 48 +++++++----------------------------------------- 1 file changed, 7 insertions(+), 41 deletions(-) diff --git a/yarn.lock b/yarn.lock index 1d077623bbd0..168ef346f123 100644 --- a/yarn.lock +++ b/yarn.lock @@ -12627,7 +12627,7 @@ __metadata: languageName: node linkType: hard -"acorn-walk@npm:8.3.0, acorn-walk@npm:^8.0.0, acorn-walk@npm:^8.0.2, acorn-walk@npm:^8.1.1": +"acorn-walk@npm:8.3.0": version: 8.3.0 resolution: "acorn-walk@npm:8.3.0" checksum: 24346e595f507b6e704a60d35f3c5e1aa9891d4fb6a3fc3d856503ab718cc26cabb5e3e1ff0ff8da6ec03d60a8226ebdb602805a94f970e7f797ea3b8b09437f @@ -12641,14 +12641,14 @@ __metadata: languageName: node linkType: hard -"acorn-walk@npm:^8.3.2": +"acorn-walk@npm:^8.0.0, acorn-walk@npm:^8.0.2, acorn-walk@npm:^8.1.1, acorn-walk@npm:^8.3.2": version: 8.3.2 resolution: "acorn-walk@npm:8.3.2" checksum: 7e2a8dad5480df7f872569b9dccff2f3da7e65f5353686b1d6032ab9f4ddf6e3a2cb83a9b52cf50b1497fd522154dda92f0abf7153290cc79cd14721ff121e52 languageName: node linkType: hard -"acorn@npm:8.11.2, acorn@npm:^8.0.4, acorn@npm:^8.1.0, acorn@npm:^8.11.0, acorn@npm:^8.4.1, acorn@npm:^8.5.0, acorn@npm:^8.7.1, acorn@npm:^8.8.1, acorn@npm:^8.8.2, acorn@npm:^8.9.0": +"acorn@npm:8.11.2": version: 8.11.2 resolution: "acorn@npm:8.11.2" bin: @@ -12675,7 +12675,7 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.10.0, acorn@npm:^8.11.3": +"acorn@npm:^8.0.4, acorn@npm:^8.1.0, acorn@npm:^8.10.0, acorn@npm:^8.11.0, acorn@npm:^8.11.3, acorn@npm:^8.4.1, acorn@npm:^8.5.0, acorn@npm:^8.7.1, acorn@npm:^8.8.1, acorn@npm:^8.8.2, acorn@npm:^8.9.0": version: 8.11.3 resolution: "acorn@npm:8.11.3" bin: @@ -25636,15 +25636,6 @@ __metadata: languageName: node linkType: hard -"nanoid@npm:^3.3.6": - version: 3.3.6 - resolution: "nanoid@npm:3.3.6" - bin: - nanoid: bin/nanoid.cjs - checksum: 606b355960d0fcbe3d27924c4c52ef7d47d3b57208808ece73279420d91469b01ec1dce10fae512b6d4a8c5a5432b352b228336a8b2202a6ea68e67fa348e2ee - languageName: node - linkType: hard - "nanoid@npm:^3.3.7": version: 3.3.7 resolution: "nanoid@npm:3.3.7" @@ -27367,14 +27358,7 @@ __metadata: languageName: node linkType: hard -"pathe@npm:^1.1.0": - version: 1.1.1 - resolution: "pathe@npm:1.1.1" - checksum: 3ae5a0529c3415d91c3ac9133f52cffea54a0dd46892fe059f4b80faf36fd207957d4594bdc87043b65d0761b1e5728f81f46bafff3b5302da4e2e48889b8c0e - languageName: node - linkType: hard - -"pathe@npm:^1.1.1, pathe@npm:^1.1.2": +"pathe@npm:^1.1.0, pathe@npm:^1.1.1, pathe@npm:^1.1.2": version: 1.1.2 resolution: "pathe@npm:1.1.2" checksum: 64ee0a4e587fb0f208d9777a6c56e4f9050039268faaaaecd50e959ef01bf847b7872785c36483fa5cdcdbdfdb31fef2ff222684d4fc21c330ab60395c681897 @@ -28031,18 +28015,7 @@ __metadata: languageName: node linkType: hard -"postcss@npm:^8.2.14, postcss@npm:^8.4.21, postcss@npm:^8.4.24, postcss@npm:^8.4.27": - version: 8.4.31 - resolution: "postcss@npm:8.4.31" - dependencies: - nanoid: "npm:^3.3.6" - picocolors: "npm:^1.0.0" - source-map-js: "npm:^1.0.2" - checksum: 748b82e6e5fc34034dcf2ae88ea3d11fd09f69b6c50ecdd3b4a875cfc7cdca435c958b211e2cb52355422ab6fccb7d8f2f2923161d7a1b281029e4a913d59acf - languageName: node - linkType: hard - -"postcss@npm:^8.4.32": +"postcss@npm:^8.2.14, postcss@npm:^8.4.21, postcss@npm:^8.4.24, postcss@npm:^8.4.27, postcss@npm:^8.4.32": version: 8.4.33 resolution: "postcss@npm:8.4.33" dependencies: @@ -30451,14 +30424,7 @@ __metadata: languageName: node linkType: hard -"signal-exit@npm:^4.0.1": - version: 4.0.2 - resolution: "signal-exit@npm:4.0.2" - checksum: 3c36ae214f4774b4a7cbbd2d090b2864f8da4dc3f9140ba5b76f38bea7605c7aa8042adf86e48ee8a0955108421873f9b0f20281c61b8a65da4d9c1c1de4929f - languageName: node - linkType: hard - -"signal-exit@npm:^4.1.0": +"signal-exit@npm:^4.0.1, signal-exit@npm:^4.1.0": version: 4.1.0 resolution: "signal-exit@npm:4.1.0" checksum: 41602dce540e46d599edba9d9860193398d135f7ff72cab629db5171516cfae628d21e7bfccde1bbfdf11c48726bc2a6d1a8fb8701125852fbfda7cf19c6aa83 From 1359bb2f0b95341d8b8de0a744a13fb6f3c8764e Mon Sep 17 00:00:00 2001 From: Josh GM Walker <56300765+Josh-Walker-GM@users.noreply.github.com> Date: Sat, 20 Jan 2024 12:05:05 +0000 Subject: [PATCH 4/5] remove unused mocks --- packages/api/__mocks__/@prisma/client.js | 1 - packages/api/__mocks__/@redwoodjs/path.js | 12 ------------ 2 files changed, 13 deletions(-) delete mode 100644 packages/api/__mocks__/@prisma/client.js delete mode 100644 packages/api/__mocks__/@redwoodjs/path.js diff --git a/packages/api/__mocks__/@prisma/client.js b/packages/api/__mocks__/@prisma/client.js deleted file mode 100644 index a75b01bde84e..000000000000 --- a/packages/api/__mocks__/@prisma/client.js +++ /dev/null @@ -1 +0,0 @@ -export const PrismaClient = class MockPrismaClient {} diff --git a/packages/api/__mocks__/@redwoodjs/path.js b/packages/api/__mocks__/@redwoodjs/path.js deleted file mode 100644 index 76922f3e9e6c..000000000000 --- a/packages/api/__mocks__/@redwoodjs/path.js +++ /dev/null @@ -1,12 +0,0 @@ -import path from 'path' - -const BASE_PATH = path.resolve(__dirname, '../../src/__tests__/fixtures') - -export const getPaths = () => ({ - base: BASE_PATH, - api: { - src: path.resolve(BASE_PATH, './api/src'), - services: path.resolve(BASE_PATH, './api/src/services'), - graphql: path.resolve(BASE_PATH, './api/src/graphql'), - }, -}) From f696f83066ef1e89d10f2c447d46c8cc617e3b1e Mon Sep 17 00:00:00 2001 From: Josh GM Walker <56300765+Josh-Walker-GM@users.noreply.github.com> Date: Sat, 20 Jan 2024 12:05:30 +0000 Subject: [PATCH 5/5] revert change to prisma mock sytle --- .../src/cache/__tests__/cacheFindMany.test.ts | 22 +++++++++---------- 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/packages/api/src/cache/__tests__/cacheFindMany.test.ts b/packages/api/src/cache/__tests__/cacheFindMany.test.ts index f5cf5ccb7fc4..0eb8008daa08 100644 --- a/packages/api/src/cache/__tests__/cacheFindMany.test.ts +++ b/packages/api/src/cache/__tests__/cacheFindMany.test.ts @@ -7,18 +7,16 @@ import { createCache } from '../index' const mockFindFirst = vi.fn() const mockFindMany = vi.fn() -vi.mock('@prisma/client', () => { - return { - PrismaClient: vi.fn(() => ({ - user: { - findFirst: mockFindFirst, - findMany: mockFindMany, - }, - })), - // NOTE: This is only available after `prisma generate` has been run - PrismaClientValidationError: new Error('PrismaClientValidationError'), - } -}) +vi.mock('@prisma/client', () => ({ + PrismaClient: vi.fn(() => ({ + user: { + findFirst: mockFindFirst, + findMany: mockFindMany, + }, + })), + // NOTE: This is only available after `prisma generate` has been run + PrismaClientValidationError: new Error('PrismaClientValidationError'), +})) describe('cacheFindMany', () => { afterEach(() => {