Printer card chips
This commit is contained in:
@@ -163,3 +163,42 @@ describe('gating', () => {
|
||||
expect(kept.map((c) => c.id)).toEqual(['ok'])
|
||||
})
|
||||
})
|
||||
|
||||
describe('chips and tooltips', () => {
|
||||
const printerCard = {
|
||||
render: 'exceptions',
|
||||
map: {
|
||||
title: 'printername',
|
||||
titletooltip: 'location',
|
||||
chips: 'supplies',
|
||||
link: '/printers/{printerid}',
|
||||
},
|
||||
_data: [{
|
||||
printerid: 7,
|
||||
printername: 'WJ-HP-402',
|
||||
location: 'Cell B, north wall',
|
||||
supplies: [
|
||||
{ text: 'Black 4%', title: 'CF226X (high)', level: 'critical' },
|
||||
{ text: 'Cyan 9%', title: 'No part number on file for this model', level: 'low' },
|
||||
],
|
||||
}],
|
||||
}
|
||||
|
||||
it('builds one chip per depleted supply, each with its reorder tooltip', () => {
|
||||
const [row] = cardRows(printerCard)
|
||||
expect(row.chips.map((c) => c.text)).toEqual(['Black 4%', 'Cyan 9%'])
|
||||
expect(row.chips[0].title).toBe('CF226X (high)')
|
||||
expect(row.chips[0].level).toBe('critical')
|
||||
})
|
||||
|
||||
it('puts the location on the title as a tooltip, not in the line', () => {
|
||||
const [row] = cardRows(printerCard)
|
||||
expect(row.titletip).toBe('Cell B, north wall')
|
||||
expect(row.detail).toBe('')
|
||||
})
|
||||
|
||||
it('has no chips when a card declares none', () => {
|
||||
expect(cardRows({ render: 'exceptions', map: { title: 'x' }, _data: [{ x: 'y' }] })[0].chips)
|
||||
.toEqual([])
|
||||
})
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user