23 lines
1.1 KiB
JavaScript
23 lines
1.1 KiB
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');
|
|
});
|
|
|
|
test('Bento-only legacy icons leave the Glass glyph set unchanged',()=>{
|
|
assert.equal(leadingGlyph('📺 Show video'),null);
|
|
assert.deepEqual(leadingGlyph('📺 Show video',true),{kind:'television',original:'📺',rest:' Show video'});
|
|
assert.equal(leadingGlyph('⏱ Tap-sync',true).kind,'clock');
|
|
assert.equal(leadingGlyph('📌 Bookmark',true).kind,'pin');
|
|
});
|