diff options
| author | zyoshoka <107108195+zyoshoka@users.noreply.github.com> | 2024-07-30 19:48:16 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-07-30 19:48:16 +0900 |
| commit | c7354c5e306c80d25db838ff64d4f3d26a47bd7f (patch) | |
| tree | ad8ccd647431a0d04637ebe985e2677b81b55080 /packages/frontend/src/components/MkDrive.folder.stories.impl.ts | |
| parent | feat: media silence (#13842) (diff) | |
| download | misskey-c7354c5e306c80d25db838ff64d4f3d26a47bd7f.tar.gz misskey-c7354c5e306c80d25db838ff64d4f3d26a47bd7f.tar.bz2 misskey-c7354c5e306c80d25db838ff64d4f3d26a47bd7f.zip | |
test(#10336): add `components/Mk[D-E].*` stories (#14118)
* test(storybook): add `components/Mk[D-E].*` stories
* fix: mock instance name
* fix: invalid `reactionAcceptance` value
* style: missing trailing commas
Diffstat (limited to 'packages/frontend/src/components/MkDrive.folder.stories.impl.ts')
| -rw-r--r-- | packages/frontend/src/components/MkDrive.folder.stories.impl.ts | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/packages/frontend/src/components/MkDrive.folder.stories.impl.ts b/packages/frontend/src/components/MkDrive.folder.stories.impl.ts new file mode 100644 index 0000000000..5f8ef48520 --- /dev/null +++ b/packages/frontend/src/components/MkDrive.folder.stories.impl.ts @@ -0,0 +1,70 @@ +/* + * SPDX-FileCopyrightText: syuilo and misskey-project + * SPDX-License-Identifier: AGPL-3.0-only + */ + +import { action } from '@storybook/addon-actions'; +import { StoryObj } from '@storybook/vue3'; +import { http, HttpResponse } from 'msw'; +import * as Misskey from 'misskey-js'; +import MkDrive_folder from './MkDrive.folder.vue'; +import { folder } from '../../.storybook/fakes.js'; +import { commonHandlers } from '../../.storybook/mocks.js'; +export const Default = { + render(args) { + return { + components: { + MkDrive_folder, + }, + setup() { + return { + args, + }; + }, + computed: { + props() { + return { + ...this.args, + }; + }, + events() { + return { + chosen: action('chosen'), + move: action('move'), + upload: action('upload'), + removeFile: action('removeFile'), + removeFolder: action('removeFolder'), + dragstart: action('dragstart'), + dragend: action('dragend'), + }; + }, + }, + template: '<MkDrive_folder v-bind="props" v-on="events" />', + }; + }, + args: { + folder: folder(), + }, + parameters: { + layout: 'centered', + msw: { + handlers: [ + ...commonHandlers, + http.post('/api/drive/folders/delete', async ({ request }) => { + action('POST /api/drive/folders/delete')(await request.json()); + return HttpResponse.json(undefined, { status: 204 }); + }), + http.post('/api/drive/folders/update', async ({ request }) => { + const req = await request.json() as Misskey.entities.DriveFoldersUpdateRequest; + action('POST /api/drive/folders/update')(req); + return HttpResponse.json({ + ...folder(), + id: req.folderId, + name: req.name ?? folder().name, + parentId: req.parentId ?? folder().parentId, + }); + }), + ], + }, + }, +} satisfies StoryObj<typeof MkDrive_folder>; |