mirror of
https://github.com/Hommy-master/capcut-mate.git
synced 2026-09-28 13:22:01 +08:00
36 lines
933 B
JavaScript
36 lines
933 B
JavaScript
const { test } = require('node:test');
|
|
const assert = require('node:assert/strict');
|
|
const { buildEditMenuTemplate } = require('./editContextMenu');
|
|
|
|
test('editable field is left to the renderer menu', () => {
|
|
const template = buildEditMenuTemplate({
|
|
isEditable: true,
|
|
editFlags: {
|
|
canCut: true,
|
|
canCopy: true,
|
|
canPaste: true,
|
|
canDelete: true,
|
|
canSelectAll: true,
|
|
},
|
|
selectionText: 'https://example.com',
|
|
});
|
|
assert.deepEqual(template, []);
|
|
});
|
|
|
|
test('non-editable selection only offers copy', () => {
|
|
const template = buildEditMenuTemplate({
|
|
isEditable: false,
|
|
selectionText: 'selected',
|
|
});
|
|
assert.deepEqual(template, [{ role: 'copy', label: '复制' }]);
|
|
});
|
|
|
|
test('empty non-editable area has no menu', () => {
|
|
const template = buildEditMenuTemplate({
|
|
isEditable: false,
|
|
selectionText: '',
|
|
editFlags: {},
|
|
});
|
|
assert.deepEqual(template, []);
|
|
});
|