diff --git a/next-ui/dir2json.d.ts b/next-ui/dir2json.d.ts index e1a6f74b..62b99521 100644 --- a/next-ui/dir2json.d.ts +++ b/next-ui/dir2json.d.ts @@ -4,10 +4,7 @@ // noinspection JSUnusedGlobalSymbols // Auto generated by vite-plugin-dir2json declare module "*i18n?dir2json&ext=.json&1" { - const json: { - "en": string; - "fr": string; -}; + const json: {}; export default json; } diff --git a/next-ui/package-lock.json b/next-ui/package-lock.json index 5474485a..a7352967 100644 --- a/next-ui/package-lock.json +++ b/next-ui/package-lock.json @@ -8,7 +8,7 @@ "name": "next-ui", "version": "0.0.0", "dependencies": { - "@pinia/colada": "^0.17.0", + "@pinia/colada": "^0.17.1", "@pinia/colada-plugin-auto-refetch": "^0.2.0", "@vueuse/core": "^13.3.0", "core-js": "^3.37.1", @@ -2016,9 +2016,9 @@ } }, "node_modules/@pinia/colada": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/@pinia/colada/-/colada-0.17.0.tgz", - "integrity": "sha512-u4lTNCbiUeachdRxIZ3CHKVKPJ56NP139+S4gs3AvwIZjn1l+us0QiYXppDXGKPv9yyH4msj+qFSy9CFhrfVKw==", + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@pinia/colada/-/colada-0.17.1.tgz", + "integrity": "sha512-we89QKKfLCCbhz/UOCJBYvZ5XdnbJYLDsO2prIO9W/0qMLSBRcehAi/Pm+q0wFIhvUbrAvblN3kUFxFNeyDxTw==", "license": "MIT", "dependencies": { "@vue/devtools-api": "^7.7.2" diff --git a/next-ui/package.json b/next-ui/package.json index 05af0011..e7acc554 100644 --- a/next-ui/package.json +++ b/next-ui/package.json @@ -25,7 +25,7 @@ "storybook:build": "storybook build" }, "dependencies": { - "@pinia/colada": "^0.17.0", + "@pinia/colada": "^0.17.1", "@pinia/colada-plugin-auto-refetch": "^0.2.0", "@vueuse/core": "^13.3.0", "core-js": "^3.37.1", diff --git a/next-ui/src/colada/queries/actuator-info.test.ts b/next-ui/src/colada/queries/actuator-info.test.ts index 9e27c136..80486d49 100644 --- a/next-ui/src/colada/queries/actuator-info.test.ts +++ b/next-ui/src/colada/queries/actuator-info.test.ts @@ -1,24 +1,20 @@ -import { afterAll, afterEach, beforeAll, beforeEach, expect, test } from 'vitest' +import { afterAll, afterEach, beforeAll, expect, test } from 'vitest' import { server } from '@/mocks/api/node' import { useActuatorInfo } from '@/colada/queries/actuator-info' import { createMockColada } from '@/mocks/pinia-colada' import { http } from 'msw' import { baseUrl, response401Unauthorized } from '@/mocks/api/handlers/base' -import { VueWrapper } from '@vue/test-utils' +import { enableAutoUnmount } from '@vue/test-utils' import type { ErrorCause } from '@/api/komga-client' -let mock: VueWrapper beforeAll(() => server.listen()) -beforeEach(() => { - mock = createMockColada() -}) -afterEach(() => { - server.resetHandlers() - mock.unmount() -}) +afterEach(() => server.resetHandlers()) afterAll(() => server.close()) +enableAutoUnmount(afterEach) + test('when getting actuator-info then values are correct', async () => { + createMockColada(useActuatorInfo) const { buildVersion, commitId, refresh } = useActuatorInfo() await refresh() @@ -29,6 +25,7 @@ test('when getting actuator-info then values are correct', async () => { test('when failing to get actuator-info then values are undefined', async () => { server.use(http.get(baseUrl + 'actuator/info', response401Unauthorized)) + createMockColada(useActuatorInfo) const { buildVersion, commitId, refresh, error } = useActuatorInfo() await refresh() diff --git a/next-ui/src/colada/queries/announcements.test.ts b/next-ui/src/colada/queries/announcements.test.ts index 86fd56de..cf93cc09 100644 --- a/next-ui/src/colada/queries/announcements.test.ts +++ b/next-ui/src/colada/queries/announcements.test.ts @@ -1,21 +1,17 @@ -import { afterAll, afterEach, beforeAll, beforeEach, expect, test } from 'vitest' +import { afterAll, afterEach, beforeAll, expect, test } from 'vitest' import { server } from '@/mocks/api/node' import { createMockColada } from '@/mocks/pinia-colada' import { useAnnouncements } from '@/colada/queries/announcements' -import { VueWrapper } from '@vue/test-utils' +import { enableAutoUnmount } from '@vue/test-utils' -let mock: VueWrapper beforeAll(() => server.listen()) -beforeEach(() => { - mock = createMockColada() -}) -afterEach(() => { - server.resetHandlers() - mock.unmount() -}) +afterEach(() => server.resetHandlers()) afterAll(() => server.close()) +enableAutoUnmount(afterEach) + test('when getting announcements then values are correct', async () => { + createMockColada(useAnnouncements) const { unreadCount, refresh } = useAnnouncements() await refresh() diff --git a/next-ui/src/colada/queries/app-releases.test.ts b/next-ui/src/colada/queries/app-releases.test.ts index 5a0df62a..77769522 100644 --- a/next-ui/src/colada/queries/app-releases.test.ts +++ b/next-ui/src/colada/queries/app-releases.test.ts @@ -1,21 +1,17 @@ -import { afterAll, afterEach, beforeAll, beforeEach, expect, test } from 'vitest' +import { afterAll, afterEach, beforeAll, expect, test } from 'vitest' import { server } from '@/mocks/api/node' import { createMockColada } from '@/mocks/pinia-colada' import { useAppReleases } from '@/colada/queries/app-releases' -import { VueWrapper } from '@vue/test-utils' +import { enableAutoUnmount } from '@vue/test-utils' -let mock: VueWrapper beforeAll(() => server.listen()) -beforeEach(() => { - mock = createMockColada() -}) -afterEach(() => { - server.resetHandlers() - mock.unmount() -}) +afterEach(() => server.resetHandlers()) afterAll(() => server.close()) +enableAutoUnmount(afterEach) + test('when getting app releases then values are correct', async () => { + createMockColada(useAppReleases) const { latestRelease, isLatestVersion, refresh } = useAppReleases() await refresh() diff --git a/next-ui/src/mocks/pinia-colada.ts b/next-ui/src/mocks/pinia-colada.ts index 3bfa6ef6..daf88203 100644 --- a/next-ui/src/mocks/pinia-colada.ts +++ b/next-ui/src/mocks/pinia-colada.ts @@ -2,13 +2,18 @@ import { createPinia } from 'pinia' import { PiniaColada } from '@pinia/colada' import { mount } from '@vue/test-utils' -const DummyComponent = { - template: '
', -} - -export const createMockColada = () => - mount(DummyComponent, { - global: { - plugins: [createPinia(), [PiniaColada, {}]], +export const createMockColada = (setupFn: () => unknown) => { + return mount( + { + setup() { + setupFn() + return {} + }, }, - }) + { + global: { + plugins: [createPinia(), [PiniaColada, {}]], + }, + }, + ) +}