diff options
Diffstat (limited to 'scripts/theme-studio/test-app-core.mjs')
| -rw-r--r-- | scripts/theme-studio/test-app-core.mjs | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/scripts/theme-studio/test-app-core.mjs b/scripts/theme-studio/test-app-core.mjs index c6473ae96..8b2df6849 100644 --- a/scripts/theme-studio/test-app-core.mjs +++ b/scripts/theme-studio/test-app-core.mjs @@ -10,7 +10,7 @@ import { nameToHex, migrateLegacyFace, normalizePkgFace, buildPkgmap, packagesForExport, mergePackagesInto, effResolve, resolveSyntaxFg, resolveUiAttr, dropdownRowTextColor, paletteOptionList, spanNeighborHex, slugify, clearPalettePlan, deletePaletteColumnPlan, groundColumnMembersFromPalette, areAllLocked, lockToggleLabel, toggleLockSet, galleryModel, appViewKeysSorted, faceBoxNonDefaults, overflowNonDefault, stepViewIndex, - cssWeight, faceDecoration, boxCss, faceCss, + cssWeight, faceDecoration, boxCss, faceCss, composeHoverTitle, } from './app-core.js'; import { planPaletteGenerator, entriesForGeneratedColumn } from './palette-generator-core.js'; import { oklch2hex, deltaE } from './colormath.js'; @@ -1135,3 +1135,20 @@ test('boxCss: Boundary — released with no color but a bg shades from the bg', assert.notEqual(fromBg, 'inset 1px 1px 0 #ffffff33,inset -1px -1px 0 #00000066'); assert.match(fromBg, /^inset 1px 1px 0 \S+,inset -1px -1px 0 \S+$/); }); + +test('composeHoverTitle: Normal — docstring sits on top of existing base text', () => { + assert.equal(composeHoverTitle('A face doc.', 'mode-line'), + 'A face doc.\n\nmode-line'); +}); +test('composeHoverTitle: Boundary — doc only (no base) returns the doc', () => { + assert.equal(composeHoverTitle('A face doc.', ''), 'A face doc.'); + assert.equal(composeHoverTitle('A face doc.', null), 'A face doc.'); +}); +test('composeHoverTitle: Boundary — base only (no doc) returns the base unchanged', () => { + assert.equal(composeHoverTitle('', 'mode-line'), 'mode-line'); + assert.equal(composeHoverTitle(undefined, 'mode-line'), 'mode-line'); +}); +test('composeHoverTitle: Error — neither doc nor base returns empty string', () => { + assert.equal(composeHoverTitle(null, null), ''); + assert.equal(composeHoverTitle(undefined, ''), ''); +}); |
