Add shell plugin model tests
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
source "$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)/base-test.sh"
|
||||
|
||||
run_node_test <<'JS'
|
||||
const monitor = requireFromRoot('shell/plugins/monitor/MonitorModel.js')
|
||||
|
||||
assertEqual(monitor.clampBrightness(0), 1, 'monitor clamps minimum brightness')
|
||||
assertEqual(monitor.clampBrightness(101), 100, 'monitor clamps maximum brightness')
|
||||
assertEqual(monitor.clampBrightness(42.4), 42, 'monitor rounds brightness')
|
||||
assertEqual(monitor.clampBrightness('nope'), 1, 'monitor rejects invalid brightness')
|
||||
|
||||
assertEqual(monitor.normalizeScale('1.250'), '1.25', 'monitor normalizes fractional scale')
|
||||
assertEqual(monitor.normalizeScale('nope'), '', 'monitor rejects invalid scale')
|
||||
|
||||
assertEqual(monitor.brightnessName(96), 'Sun blast', 'monitor names very bright displays')
|
||||
assertEqual(monitor.brightnessName(12), 'Candlelit', 'monitor names dim displays')
|
||||
|
||||
assertDeepEqual(
|
||||
monitor.parseDisplays(JSON.stringify([
|
||||
{ name: 'eDP-1', enabled: true },
|
||||
{ name: 'HDMI-A-1', enabled: false },
|
||||
{ name: 'DP-1', enabled: true }
|
||||
])),
|
||||
{
|
||||
displays: [
|
||||
{ name: 'eDP-1', enabled: true },
|
||||
{ name: 'HDMI-A-1', enabled: false },
|
||||
{ name: 'DP-1', enabled: true }
|
||||
],
|
||||
enabledDisplayCount: 2
|
||||
},
|
||||
'monitor parses display state'
|
||||
)
|
||||
|
||||
assertDeepEqual(monitor.parseDisplays('{'), { displays: [], enabledDisplayCount: 0 }, 'monitor handles invalid display JSON')
|
||||
JS
|
||||
Reference in New Issue
Block a user