diff --git a/api/jobs_test.go b/api/jobs_test.go index 0df90807e..0453f033a 100644 --- a/api/jobs_test.go +++ b/api/jobs_test.go @@ -652,6 +652,7 @@ func TestJobs_Canonicalize(t *testing.T) { }, Resources: &Resources{ CPU: intToPtr(500), + Cores: intToPtr(0), MemoryMB: intToPtr(256), Networks: []*NetworkResource{ { diff --git a/api/resources_test.go b/api/resources_test.go new file mode 100644 index 000000000..9db95a179 --- /dev/null +++ b/api/resources_test.go @@ -0,0 +1,55 @@ +package api + +import ( + "reflect" + "testing" + + "github.com/kr/pretty" +) + +func TestResources_Canonicalize(t *testing.T) { + testCases := []struct { + name string + input *Resources + expected *Resources + }{ + { + name: "empty", + input: &Resources{}, + expected: DefaultResources(), + }, + { + name: "cores", + input: &Resources{ + Cores: intToPtr(2), + MemoryMB: intToPtr(1024), + }, + expected: &Resources{ + CPU: intToPtr(0), + Cores: intToPtr(2), + MemoryMB: intToPtr(1024), + }, + }, + { + name: "cpu", + input: &Resources{ + CPU: intToPtr(500), + MemoryMB: intToPtr(1024), + }, + expected: &Resources{ + CPU: intToPtr(500), + Cores: intToPtr(0), + MemoryMB: intToPtr(1024), + }, + }, + } + + for _, tc := range testCases { + t.Run(tc.name, func(t *testing.T) { + tc.input.Canonicalize() + if !reflect.DeepEqual(tc.input, tc.expected) { + t.Fatalf("Name: %v, Diffs:\n%v", tc.name, pretty.Diff(tc.expected, tc.input)) + } + }) + } +} diff --git a/client/client_test.go b/client/client_test.go index a0d0de87c..08c1d0429 100644 --- a/client/client_test.go +++ b/client/client_test.go @@ -1483,7 +1483,8 @@ func TestClient_getAllocatedResources(t *testing.T) { expected := structs.ComparableResources{ Flattened: structs.AllocatedTaskResources{ Cpu: structs.AllocatedCpuResources{ - CpuShares: 768, + CpuShares: 768, + ReservedCores: []uint16{}, }, Memory: structs.AllocatedMemoryResources{ MemoryMB: 768,