mirror of
https://github.com/henrygd/beszel.git
synced 2026-08-19 16:57:47 +02:00
Clamp Linux battery capacity percentage (#1957)
This commit is contained in:
@@ -102,6 +102,7 @@ func GetBatteryStats() (batteryPercent uint8, batteryState uint8, err error) {
|
|||||||
if parseErr != nil {
|
if parseErr != nil {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
cap = min(max(cap, 0), 100)
|
||||||
totalPercent += cap
|
totalPercent += cap
|
||||||
count++
|
count++
|
||||||
|
|
||||||
|
|||||||
@@ -91,6 +91,16 @@ func TestGetBatteryStats_FullBattery(t *testing.T) {
|
|||||||
assert.Equal(t, stateFull, state)
|
assert.Equal(t, stateFull, state)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestGetBatteryStats_CapacityClamped(t *testing.T) {
|
||||||
|
_, addBattery := setupFakeSysfs(t)
|
||||||
|
addBattery("BAT0", "105", "Charging")
|
||||||
|
|
||||||
|
pct, state, err := GetBatteryStats()
|
||||||
|
assert.NoError(t, err)
|
||||||
|
assert.Equal(t, uint8(100), pct)
|
||||||
|
assert.Equal(t, stateCharging, state)
|
||||||
|
}
|
||||||
|
|
||||||
func TestGetBatteryStats_EmptyBattery(t *testing.T) {
|
func TestGetBatteryStats_EmptyBattery(t *testing.T) {
|
||||||
_, addBattery := setupFakeSysfs(t)
|
_, addBattery := setupFakeSysfs(t)
|
||||||
addBattery("BAT0", "0", "Empty")
|
addBattery("BAT0", "0", "Empty")
|
||||||
|
|||||||
Reference in New Issue
Block a user