package status

import (
	"encoding/json"
	"fmt"
	"testing"
)

func TestGetMemoryStatus(t *testing.T) {

	memoryStatus, err := GetMemoryStatus()
	if err != nil {
		return
	}

	fmt.Printf("Total Memory: %s\n", FormatMemorySize(memoryStatus.TotalMemory))
	fmt.Printf("Used Memory: %s\n", FormatMemorySize(memoryStatus.UsedMemory))
	fmt.Printf("Available Memory: %s\n", FormatMemorySize(memoryStatus.AvailableMemory))
	fmt.Printf("Total Virtual Memory: %s\n", FormatMemorySize(memoryStatus.TotalVirtualMemory))
	fmt.Printf("Used Virtual Memory: %s\n", FormatMemorySize(memoryStatus.UsedVirtualMemory))

	marshalIndent, err := json.MarshalIndent(memoryStatus, "", "  ")
	if err != nil {
		fmt.Printf("error")
	}

	fmt.Println(string(marshalIndent))
}
