...

Source file src/github.com/shirou/gopsutil/mem/mem_darwin_test.go

Documentation: github.com/shirou/gopsutil/mem

     1  // +build darwin
     2  
     3  package mem
     4  
     5  import (
     6  	"strconv"
     7  	"strings"
     8  	"testing"
     9  
    10  	"github.com/stretchr/testify/assert"
    11  )
    12  
    13  func TestVirtualMemoryDarwin(t *testing.T) {
    14  	v, err := VirtualMemory()
    15  	assert.Nil(t, err)
    16  
    17  	outBytes, err := invoke.Command("/usr/sbin/sysctl", "hw.memsize")
    18  	assert.Nil(t, err)
    19  	outString := string(outBytes)
    20  	outString = strings.TrimSpace(outString)
    21  	outParts := strings.Split(outString, " ")
    22  	actualTotal, err := strconv.ParseInt(outParts[1], 10, 64)
    23  	assert.Nil(t, err)
    24  	assert.Equal(t, uint64(actualTotal), v.Total)
    25  
    26  	assert.True(t, v.Available > 0)
    27  	assert.Equal(t, v.Available, v.Free+v.Inactive, "%v", v)
    28  
    29  	assert.True(t, v.Used > 0)
    30  	assert.True(t, v.Used < v.Total)
    31  
    32  	assert.True(t, v.UsedPercent > 0)
    33  	assert.True(t, v.UsedPercent < 100)
    34  
    35  	assert.True(t, v.Free > 0)
    36  	assert.True(t, v.Free < v.Available)
    37  
    38  	assert.True(t, v.Active > 0)
    39  	assert.True(t, v.Active < v.Total)
    40  
    41  	assert.True(t, v.Inactive > 0)
    42  	assert.True(t, v.Inactive < v.Total)
    43  
    44  	assert.True(t, v.Wired > 0)
    45  	assert.True(t, v.Wired < v.Total)
    46  }
    47  

View as plain text