Files
ytplayer/frontend/glass-controls.test.js
2026-10-03 20:14:19 +08:00

16 lines
809 B
JavaScript

const test=require('node:test'),assert=require('node:assert/strict');
const {leadingGlyph}=require('./glass-controls.js');
test('glass icon substitution preserves leading whitespace and remaining labels',()=>{
assert.deepEqual(leadingGlyph(' ⬇ Save'),{kind:'save',original:' ⬇',rest:' Save'});
assert.deepEqual(leadingGlyph('⚙️ Settings'),{kind:'settings',original:'⚙️',rest:' Settings'});
assert.equal(leadingGlyph('A song with 🔍 in its title'),null);
assert.equal(leadingGlyph('Clear all'),null);
assert.equal(leadingGlyph('⏸').kind,'pause');
});
test('playlist trash, menu and music glyphs use drawn glass icons',()=>{
assert.equal(leadingGlyph('🗑️ Delete').kind,'trash');
assert.equal(leadingGlyph('⋮').kind,'more');
assert.equal(leadingGlyph('🎵').kind,'music');
});