From 096dda3768b9ff9032b054eaaf86c7e69b1b6113 Mon Sep 17 00:00:00 2001 From: Silvery Fu Date: Thu, 24 May 2018 23:29:23 -0700 Subject: [PATCH] Rename and add unit test for ImageSizes --- .../algorithm/priorities/image_locality.go | 2 +- pkg/scheduler/schedulercache/node_info.go | 4 +- .../schedulercache/node_info_test.go | 40 +++++++++++++++++++ 3 files changed, 43 insertions(+), 3 deletions(-) diff --git a/pkg/scheduler/algorithm/priorities/image_locality.go b/pkg/scheduler/algorithm/priorities/image_locality.go index e7128331029..06e93c5e8f2 100644 --- a/pkg/scheduler/algorithm/priorities/image_locality.go +++ b/pkg/scheduler/algorithm/priorities/image_locality.go @@ -72,7 +72,7 @@ func calculateScoreFromSize(sumSize int64) int { func totalImageSize(nodeInfo *schedulercache.NodeInfo, containers []v1.Container) int64 { var total int64 - imageSizes := nodeInfo.Images() + imageSizes := nodeInfo.ImageSizes() for _, container := range containers { if size, ok := imageSizes[container.Image]; ok { total += size diff --git a/pkg/scheduler/schedulercache/node_info.go b/pkg/scheduler/schedulercache/node_info.go index 2773437327f..60593c37bd5 100644 --- a/pkg/scheduler/schedulercache/node_info.go +++ b/pkg/scheduler/schedulercache/node_info.go @@ -293,8 +293,8 @@ func (n *NodeInfo) UsedPorts() util.HostPortInfo { return n.usedPorts } -// Images returns the image size information on this node. -func (n *NodeInfo) Images() map[string]int64 { +// ImageSizes returns the image size information on this node. +func (n *NodeInfo) ImageSizes() map[string]int64 { if n == nil { return nil } diff --git a/pkg/scheduler/schedulercache/node_info_test.go b/pkg/scheduler/schedulercache/node_info_test.go index 2444d6ce61f..34214d9ef00 100644 --- a/pkg/scheduler/schedulercache/node_info_test.go +++ b/pkg/scheduler/schedulercache/node_info_test.go @@ -235,6 +235,46 @@ func TestSetMaxResource(t *testing.T) { } } +func TestImageSizes(t *testing.T) { + ni := fakeNodeInfo() + ni.node = &v1.Node{ + ObjectMeta: metav1.ObjectMeta{ + Name: "test-node", + }, + Status: v1.NodeStatus{ + Images: []v1.ContainerImage{ + { + Names: []string{ + "gcr.io/10", + "gcr.io/10:v1", + }, + SizeBytes: int64(10 * 1024 * 1024), + }, + { + Names: []string{ + "gcr.io/50", + "gcr.io/50:v1", + }, + SizeBytes: int64(50 * 1024 * 1024), + }, + }, + }, + } + + ni.updateImageSizes() + expected := map[string]int64{ + "gcr.io/10": 10 * 1024 * 1024, + "gcr.io/10:v1": 10 * 1024 * 1024, + "gcr.io/50": 50 * 1024 * 1024, + "gcr.io/50:v1": 50 * 1024 * 1024, + } + + imageSizes := ni.ImageSizes() + if !reflect.DeepEqual(expected, imageSizes) { + t.Errorf("expected: %#v, got: %#v", expected, imageSizes) + } +} + func TestNewNodeInfo(t *testing.T) { nodeName := "test-node" pods := []*v1.Pod{