diff --git a/src/tests/libs/widgets-loader.test.ts b/src/tests/libs/widgets-loader.test.ts index cdcf83c59..8abbe9f0c 100644 --- a/src/tests/libs/widgets-loader.test.ts +++ b/src/tests/libs/widgets-loader.test.ts @@ -1,10 +1,20 @@ import { expect, test } from 'vitest' import { WidgetType } from '@/types/widgets' +import { MiniWidgetType } from '@/types/miniWidgets' test('Test widgets exist', async () => { + await enum_to_files_checker(WidgetType, '@/components/widgets/${name}.vue') +}) + + +test('Test mini-widgets exist', async () => { + await enum_to_files_checker(MiniWidgetType, '@/components/mini-widgets/${name}.vue') +}) + +async function enum_to_files_checker(enum_type: T, path_template: string): Promise { const loader = await Promise.allSettled( - Object.values(WidgetType).map((name) => import(`@/components/widgets/${name}.vue`)) + Object.values(enum_type).map((name) => import(eval('`' + path_template + '`'))) // Please, have marcy of my soul ) const found_all_files = loader.every((file) => { if (file.status == 'fulfilled') { @@ -17,4 +27,4 @@ test('Test widgets exist', async () => { return !failed_to_find }) expect(found_all_files).toBe(true) -}) +} \ No newline at end of file