github.com/iqoqo/nomad@v0.11.3-0.20200911112621-d7021c74d101/client/fingerprint/memory_test.go (about)

     1  package fingerprint
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/hashicorp/nomad/client/config"
     7  	"github.com/hashicorp/nomad/helper/testlog"
     8  	"github.com/hashicorp/nomad/nomad/structs"
     9  
    10  	"github.com/stretchr/testify/require"
    11  )
    12  
    13  func TestMemoryFingerprint(t *testing.T) {
    14  	require := require.New(t)
    15  
    16  	f := NewMemoryFingerprint(testlog.HCLogger(t))
    17  	node := &structs.Node{
    18  		Attributes: make(map[string]string),
    19  	}
    20  
    21  	request := &FingerprintRequest{Config: &config.Config{}, Node: node}
    22  	var response FingerprintResponse
    23  	err := f.Fingerprint(request, &response)
    24  	require.NoError(err)
    25  
    26  	assertNodeAttributeContains(t, response.Attributes, "memory.totalbytes")
    27  	require.NotNil(response.Resources, "expected response Resources to not be nil")
    28  	require.NotZero(response.Resources.MemoryMB, "expected memory to be non-zero")
    29  	require.NotNil(response.NodeResources, "expected response NodeResources to not be nil")
    30  	require.NotZero(response.NodeResources.Memory.MemoryMB, "expected memory to be non-zero")
    31  }
    32  
    33  func TestMemoryFingerprint_Override(t *testing.T) {
    34  	f := NewMemoryFingerprint(testlog.HCLogger(t))
    35  	node := &structs.Node{
    36  		Attributes: make(map[string]string),
    37  	}
    38  
    39  	memoryMB := 15000
    40  	request := &FingerprintRequest{Config: &config.Config{MemoryMB: memoryMB}, Node: node}
    41  	var response FingerprintResponse
    42  	err := f.Fingerprint(request, &response)
    43  	if err != nil {
    44  		t.Fatalf("err: %v", err)
    45  	}
    46  
    47  	assertNodeAttributeContains(t, response.Attributes, "memory.totalbytes")
    48  	require := require.New(t)
    49  	require.NotNil(response.Resources)
    50  	require.EqualValues(response.Resources.MemoryMB, memoryMB)
    51  	require.NotNil(response.NodeResources)
    52  	require.EqualValues(response.NodeResources.Memory.MemoryMB, memoryMB)
    53  }