Files
ProxmoxDash/memory_test.go

34 lines
787 B
Go

package main
import (
"os"
"path/filepath"
"testing"
)
func TestReadMemoryMetrics(t *testing.T) {
path := filepath.Join(t.TempDir(), "meminfo")
content := `MemTotal: 1000000 kB
MemAvailable: 400000 kB
Buffers: 10000 kB
Cached: 200000 kB
SReclaimable: 10000 kB
SwapTotal: 500000 kB
SwapFree: 300000 kB
`
if err := os.WriteFile(path, []byte(content), 0o600); err != nil {
t.Fatal(err)
}
memory, err := readMemoryMetrics(path)
if err != nil {
t.Fatal(err)
}
if memory.UsagePercent != 60 || memory.SwapPercent != 40 {
t.Fatalf("неожиданные проценты памяти: %+v", memory)
}
if memory.CachedBytes != 210000*1024 {
t.Fatalf("неожиданный размер кэша: %d", memory.CachedBytes)
}
}