//go:build darwin

package stats

import "testing"

func TestParseVmStatFreePages(t *testing.T) {
	out := `Mach Virtual Memory Statistics: (page size of 4096 bytes)
Pages free:                               12345.
Pages active:                            67890.
`
	if got := parseVmStatFreePages(out); got != 12345 {
		t.Fatalf("got %d", got)
	}
	if parseVmStatFreePages("no free pages here") != 0 {
		t.Fatal("missing line should return 0")
	}
}

func TestParseVmStatFreeBytes(t *testing.T) {
	out := "Pages free:                               1000.\n"
	if got := parseVmStatFreeBytes(out); got != 1000*4096 {
		t.Fatalf("got %d", got)
	}
}
