Pulse/internal/models/disk_summary_test.go

47 lines
1.2 KiB
Go

package models
import "testing"
func TestSummaryDiskPrefersRootMount(t *testing.T) {
disks := []Disk{
{Mountpoint: "/boot", Total: 1, Used: 1},
{Mountpoint: "/", Total: 100, Used: 40, Free: 60, Usage: 40},
{Mountpoint: "/var", Total: 200, Used: 50},
}
got, ok := SummaryDisk(disks)
if !ok {
t.Fatal("expected summary disk")
}
if got.Mountpoint != "/" {
t.Fatalf("summary mountpoint = %q, want /", got.Mountpoint)
}
if got.Total != 100 || got.Used != 40 {
t.Fatalf("summary disk = %+v, want root disk", got)
}
}
func TestSummaryDiskFallsBackToFirstNonZeroDisk(t *testing.T) {
disks := []Disk{
{Mountpoint: "", Total: 0},
{Mountpoint: "/tank", Total: 400, Used: 100, Free: 300, Usage: 25},
{Mountpoint: "/backup", Total: 800, Used: 200},
}
got, ok := SummaryDisk(disks)
if !ok {
t.Fatal("expected summary disk")
}
if got.Mountpoint != "/tank" {
t.Fatalf("summary mountpoint = %q, want /tank", got.Mountpoint)
}
}
func TestSummaryDiskReturnsFalseWhenNoUsableDiskExists(t *testing.T) {
if _, ok := SummaryDisk(nil); ok {
t.Fatal("expected no summary disk for nil input")
}
if _, ok := SummaryDisk([]Disk{{Mountpoint: "/", Total: 0}}); ok {
t.Fatal("expected no summary disk for zero-capacity disks")
}
}