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