에디터 미디어 적용 버튼 상태 분리

This commit is contained in:
2026-07-24 18:47:43 +09:00
parent a188229489
commit 48982cfa52
7 changed files with 73 additions and 6 deletions

View File

@@ -1,6 +1,7 @@
import assert from 'node:assert/strict'
import test from 'node:test'
import {
buildMediaPickerApplyState,
buildMediaPickerEmptyMessage,
buildMediaPickerPageItems,
buildMediaPickerRangeLabel,
@@ -113,6 +114,35 @@ test('미디어 선택 라이브러리 빈 상태 문구를 계산한다', () =>
assert.equal(buildMediaPickerEmptyMessage(' car '), '「car」에 맞는 미디어가 없습니다.')
})
test('미디어 선택 적용 버튼 상태를 계산한다', () => {
assert.deepEqual(buildMediaPickerApplyState({
selectedUrls: [],
isUploading: false,
isGallery: false
}), {
disabled: true,
label: '삽입'
})
assert.deepEqual(buildMediaPickerApplyState({
selectedUrls: ['/a.png'],
isUploading: true,
isGallery: false
}), {
disabled: true,
label: '삽입'
})
assert.deepEqual(buildMediaPickerApplyState({
selectedUrls: ['/a.png', '/b.png'],
isUploading: false,
isGallery: true
}), {
disabled: false,
label: '2개 삽입'
})
})
test('미디어 항목으로 fenced 미디어 블록을 만든다', () => {
assert.deepEqual(createMediaBlockMarkdown('video', {
url: '/uploads/a.mp4',