github.com/rawahars/moby@v24.0.4+incompatible/pkg/meminfo/meminfo_unix_test.go (about) 1 //go:build linux || freebsd 2 // +build linux freebsd 3 4 package meminfo 5 6 import ( 7 "strings" 8 "testing" 9 ) 10 11 // TestMemInfo tests parseMemInfo with a static meminfo string 12 func TestMemInfo(t *testing.T) { 13 const input = ` 14 MemTotal: 1 kB 15 MemFree: 2 kB 16 MemAvailable: 3 kB 17 SwapTotal: 4 kB 18 SwapFree: 5 kB 19 Malformed1: 20 Malformed2: 1 21 Malformed3: 2 MB 22 Malformed4: X kB 23 ` 24 25 const KiB = 1024 26 27 meminfo, err := parseMemInfo(strings.NewReader(input)) 28 if err != nil { 29 t.Fatal(err) 30 } 31 if meminfo.MemTotal != 1*KiB { 32 t.Fatalf("Unexpected MemTotal: %d", meminfo.MemTotal) 33 } 34 if meminfo.MemFree != 3*KiB { 35 t.Fatalf("Unexpected MemFree: %d", meminfo.MemFree) 36 } 37 if meminfo.SwapTotal != 4*KiB { 38 t.Fatalf("Unexpected SwapTotal: %d", meminfo.SwapTotal) 39 } 40 if meminfo.SwapFree != 5*KiB { 41 t.Fatalf("Unexpected SwapFree: %d", meminfo.SwapFree) 42 } 43 }