mirror of
				https://github.com/optim-enterprises-bv/kubernetes.git
				synced 2025-11-03 19:58:17 +00:00 
			
		
		
		
	test: add unit tests to verify the .status.resize field
This commit is contained in:
		@@ -2452,7 +2452,7 @@ func (w *warningRecorder) AddWarning(_, text string) {
 | 
				
			|||||||
	w.warnings = append(w.warnings, text)
 | 
						w.warnings = append(w.warnings, text)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
					func TestPodResizePrepareForUpdate(t *testing.T) {
 | 
				
			||||||
	tests := []struct {
 | 
						tests := []struct {
 | 
				
			||||||
		name     string
 | 
							name     string
 | 
				
			||||||
		oldPod   *api.Pod
 | 
							oldPod   *api.Pod
 | 
				
			||||||
@@ -2468,13 +2468,24 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container1",
 | 
												Name: "container1",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("1"),
 | 
														api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("1Gi"),
 | 
														api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
						},
 | 
											},
 | 
				
			||||||
					},
 | 
										},
 | 
				
			||||||
				},
 | 
									},
 | 
				
			||||||
 | 
									Status: api.PodStatus{
 | 
				
			||||||
 | 
										ContainerStatuses: []api.ContainerStatus{
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container1",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
										},
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
			},
 | 
								},
 | 
				
			||||||
			newPod: &api.Pod{
 | 
								newPod: &api.Pod{
 | 
				
			||||||
				Spec: api.PodSpec{
 | 
									Spec: api.PodSpec{
 | 
				
			||||||
@@ -2483,13 +2494,24 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container1",
 | 
												Name: "container1",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("1"),
 | 
														api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("1Gi"),
 | 
														api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
						},
 | 
											},
 | 
				
			||||||
					},
 | 
										},
 | 
				
			||||||
				},
 | 
									},
 | 
				
			||||||
 | 
									Status: api.PodStatus{
 | 
				
			||||||
 | 
										ContainerStatuses: []api.ContainerStatus{
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container1",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
										},
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
			},
 | 
								},
 | 
				
			||||||
			expected: &api.Pod{
 | 
								expected: &api.Pod{
 | 
				
			||||||
				Spec: api.PodSpec{
 | 
									Spec: api.PodSpec{
 | 
				
			||||||
@@ -2498,13 +2520,24 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container1",
 | 
												Name: "container1",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("1"),
 | 
														api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("1Gi"),
 | 
														api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
						},
 | 
											},
 | 
				
			||||||
					},
 | 
										},
 | 
				
			||||||
				},
 | 
									},
 | 
				
			||||||
 | 
									Status: api.PodStatus{
 | 
				
			||||||
 | 
										ContainerStatuses: []api.ContainerStatus{
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container1",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
										},
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
			},
 | 
								},
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
@@ -2516,13 +2549,24 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container1",
 | 
												Name: "container1",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("1"),
 | 
														api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("1Gi"),
 | 
														api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
						},
 | 
											},
 | 
				
			||||||
					},
 | 
										},
 | 
				
			||||||
				},
 | 
									},
 | 
				
			||||||
 | 
									Status: api.PodStatus{
 | 
				
			||||||
 | 
										ContainerStatuses: []api.ContainerStatus{
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container1",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
										},
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
			},
 | 
								},
 | 
				
			||||||
			newPod: &api.Pod{
 | 
								newPod: &api.Pod{
 | 
				
			||||||
				Spec: api.PodSpec{
 | 
									Spec: api.PodSpec{
 | 
				
			||||||
@@ -2531,12 +2575,8 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container1",
 | 
												Name: "container1",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("2"),
 | 
														api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("2Gi"),
 | 
														api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
								},
 | 
					 | 
				
			||||||
								Limits: api.ResourceList{
 | 
					 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("4"),
 | 
					 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("4Gi"),
 | 
					 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
							ResizePolicy: []api.ContainerResizePolicy{
 | 
												ResizePolicy: []api.ContainerResizePolicy{
 | 
				
			||||||
@@ -2546,6 +2586,17 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
						},
 | 
											},
 | 
				
			||||||
					},
 | 
										},
 | 
				
			||||||
				},
 | 
									},
 | 
				
			||||||
 | 
									Status: api.PodStatus{
 | 
				
			||||||
 | 
										ContainerStatuses: []api.ContainerStatus{
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container1",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
										},
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
			},
 | 
								},
 | 
				
			||||||
			expected: &api.Pod{
 | 
								expected: &api.Pod{
 | 
				
			||||||
				Spec: api.PodSpec{
 | 
									Spec: api.PodSpec{
 | 
				
			||||||
@@ -2554,12 +2605,8 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container1",
 | 
												Name: "container1",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("2"),
 | 
														api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("2Gi"),
 | 
														api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
								},
 | 
					 | 
				
			||||||
								Limits: api.ResourceList{
 | 
					 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("4"),
 | 
					 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("4Gi"),
 | 
					 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
							ResizePolicy: []api.ContainerResizePolicy{
 | 
												ResizePolicy: []api.ContainerResizePolicy{
 | 
				
			||||||
@@ -2569,6 +2616,17 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
						},
 | 
											},
 | 
				
			||||||
					},
 | 
										},
 | 
				
			||||||
				},
 | 
									},
 | 
				
			||||||
 | 
									Status: api.PodStatus{
 | 
				
			||||||
 | 
										ContainerStatuses: []api.ContainerStatus{
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container1",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
										},
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
			},
 | 
								},
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
@@ -2580,13 +2638,24 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container1",
 | 
												Name: "container1",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("1"),
 | 
														api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("1Gi"),
 | 
														api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
						},
 | 
											},
 | 
				
			||||||
					},
 | 
										},
 | 
				
			||||||
				},
 | 
									},
 | 
				
			||||||
 | 
									Status: api.PodStatus{
 | 
				
			||||||
 | 
										ContainerStatuses: []api.ContainerStatus{
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container1",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
										},
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
			},
 | 
								},
 | 
				
			||||||
			newPod: &api.Pod{
 | 
								newPod: &api.Pod{
 | 
				
			||||||
				Spec: api.PodSpec{
 | 
									Spec: api.PodSpec{
 | 
				
			||||||
@@ -2595,7 +2664,7 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container1",
 | 
												Name: "container1",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("1"),
 | 
														api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("1Gi"),
 | 
														api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
@@ -2604,13 +2673,24 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container2",
 | 
												Name: "container2",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("1"),
 | 
														api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("1Gi"),
 | 
														api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
						},
 | 
											},
 | 
				
			||||||
					},
 | 
										},
 | 
				
			||||||
				},
 | 
									},
 | 
				
			||||||
 | 
									Status: api.PodStatus{
 | 
				
			||||||
 | 
										ContainerStatuses: []api.ContainerStatus{
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container1",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
										},
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
			},
 | 
								},
 | 
				
			||||||
			expected: &api.Pod{
 | 
								expected: &api.Pod{
 | 
				
			||||||
				Spec: api.PodSpec{
 | 
									Spec: api.PodSpec{
 | 
				
			||||||
@@ -2619,13 +2699,24 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container1",
 | 
												Name: "container1",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("1"),
 | 
														api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("1Gi"),
 | 
														api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
						},
 | 
											},
 | 
				
			||||||
					},
 | 
										},
 | 
				
			||||||
				},
 | 
									},
 | 
				
			||||||
 | 
									Status: api.PodStatus{
 | 
				
			||||||
 | 
										ContainerStatuses: []api.ContainerStatus{
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container1",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
										},
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
			},
 | 
								},
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
@@ -2637,13 +2728,24 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container1",
 | 
												Name: "container1",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("1"),
 | 
														api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("1Gi"),
 | 
														api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
						},
 | 
											},
 | 
				
			||||||
					},
 | 
										},
 | 
				
			||||||
				},
 | 
									},
 | 
				
			||||||
 | 
									Status: api.PodStatus{
 | 
				
			||||||
 | 
										ContainerStatuses: []api.ContainerStatus{
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container1",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
										},
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
			},
 | 
								},
 | 
				
			||||||
			newPod: &api.Pod{
 | 
								newPod: &api.Pod{
 | 
				
			||||||
				Spec: api.PodSpec{
 | 
									Spec: api.PodSpec{
 | 
				
			||||||
@@ -2652,7 +2754,7 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container1",
 | 
												Name: "container1",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("1"),
 | 
														api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("2Gi"),
 | 
														api.ResourceMemory: resource.MustParse("2Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
@@ -2661,13 +2763,24 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container2",
 | 
												Name: "container2",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("1"),
 | 
														api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("1Gi"),
 | 
														api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
						},
 | 
											},
 | 
				
			||||||
					},
 | 
										},
 | 
				
			||||||
				},
 | 
									},
 | 
				
			||||||
 | 
									Status: api.PodStatus{
 | 
				
			||||||
 | 
										ContainerStatuses: []api.ContainerStatus{
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container1",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
										},
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
			},
 | 
								},
 | 
				
			||||||
			expected: &api.Pod{
 | 
								expected: &api.Pod{
 | 
				
			||||||
				Spec: api.PodSpec{
 | 
									Spec: api.PodSpec{
 | 
				
			||||||
@@ -2676,13 +2789,25 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container1",
 | 
												Name: "container1",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("1"),
 | 
														api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("2Gi"),
 | 
														api.ResourceMemory: resource.MustParse("2Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
						},
 | 
											},
 | 
				
			||||||
					},
 | 
										},
 | 
				
			||||||
				},
 | 
									},
 | 
				
			||||||
 | 
									Status: api.PodStatus{
 | 
				
			||||||
 | 
										Resize: api.PodResizeStatusProposed,
 | 
				
			||||||
 | 
										ContainerStatuses: []api.ContainerStatus{
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container1",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
										},
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
			},
 | 
								},
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
@@ -2694,7 +2819,7 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container1",
 | 
												Name: "container1",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("1"),
 | 
														api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("1Gi"),
 | 
														api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
@@ -2703,13 +2828,31 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container2",
 | 
												Name: "container2",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("1"),
 | 
														api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("1Gi"),
 | 
														api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
						},
 | 
											},
 | 
				
			||||||
					},
 | 
										},
 | 
				
			||||||
				},
 | 
									},
 | 
				
			||||||
 | 
									Status: api.PodStatus{
 | 
				
			||||||
 | 
										ContainerStatuses: []api.ContainerStatus{
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container1",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container2",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
										},
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
			},
 | 
								},
 | 
				
			||||||
			newPod: &api.Pod{
 | 
								newPod: &api.Pod{
 | 
				
			||||||
				Spec: api.PodSpec{
 | 
									Spec: api.PodSpec{
 | 
				
			||||||
@@ -2718,7 +2861,7 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container2",
 | 
												Name: "container2",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("2"),
 | 
														api.ResourceCPU:    resource.MustParse("200m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("2Gi"),
 | 
														api.ResourceMemory: resource.MustParse("2Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
@@ -2727,13 +2870,31 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container1",
 | 
												Name: "container1",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("2"),
 | 
														api.ResourceCPU:    resource.MustParse("200m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("4Gi"),
 | 
														api.ResourceMemory: resource.MustParse("4Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
						},
 | 
											},
 | 
				
			||||||
					},
 | 
										},
 | 
				
			||||||
				},
 | 
									},
 | 
				
			||||||
 | 
									Status: api.PodStatus{
 | 
				
			||||||
 | 
										ContainerStatuses: []api.ContainerStatus{
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container1",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container2",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
										},
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
			},
 | 
								},
 | 
				
			||||||
			expected: &api.Pod{
 | 
								expected: &api.Pod{
 | 
				
			||||||
				Spec: api.PodSpec{
 | 
									Spec: api.PodSpec{
 | 
				
			||||||
@@ -2742,7 +2903,7 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container1",
 | 
												Name: "container1",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("2"),
 | 
														api.ResourceCPU:    resource.MustParse("200m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("4Gi"),
 | 
														api.ResourceMemory: resource.MustParse("4Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
@@ -2751,19 +2912,39 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
							Name: "container2",
 | 
												Name: "container2",
 | 
				
			||||||
							Resources: api.ResourceRequirements{
 | 
												Resources: api.ResourceRequirements{
 | 
				
			||||||
								Requests: api.ResourceList{
 | 
													Requests: api.ResourceList{
 | 
				
			||||||
									api.ResourceCPU:    resource.MustParse("2"),
 | 
														api.ResourceCPU:    resource.MustParse("200m"),
 | 
				
			||||||
									api.ResourceMemory: resource.MustParse("2Gi"),
 | 
														api.ResourceMemory: resource.MustParse("2Gi"),
 | 
				
			||||||
								},
 | 
													},
 | 
				
			||||||
							},
 | 
												},
 | 
				
			||||||
						},
 | 
											},
 | 
				
			||||||
					},
 | 
										},
 | 
				
			||||||
				},
 | 
									},
 | 
				
			||||||
 | 
									Status: api.PodStatus{
 | 
				
			||||||
 | 
										Resize: api.PodResizeStatusProposed,
 | 
				
			||||||
 | 
										ContainerStatuses: []api.ContainerStatus{
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container1",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												Name: "container2",
 | 
				
			||||||
 | 
												AllocatedResources: api.ResourceList{
 | 
				
			||||||
 | 
													api.ResourceCPU:    resource.MustParse("100m"),
 | 
				
			||||||
 | 
													api.ResourceMemory: resource.MustParse("1Gi"),
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
										},
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
			},
 | 
								},
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for _, tc := range tests {
 | 
						for _, tc := range tests {
 | 
				
			||||||
		t.Run(tc.name, func(t *testing.T) {
 | 
							t.Run(tc.name, func(t *testing.T) {
 | 
				
			||||||
 | 
								featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.InPlacePodVerticalScaling, true)
 | 
				
			||||||
			tc.newPod.Name = "test-pod"
 | 
								tc.newPod.Name = "test-pod"
 | 
				
			||||||
			tc.newPod.Namespace = "test-ns"
 | 
								tc.newPod.Namespace = "test-ns"
 | 
				
			||||||
			tc.newPod.ResourceVersion = "123"
 | 
								tc.newPod.ResourceVersion = "123"
 | 
				
			||||||
@@ -2772,9 +2953,10 @@ func TestDropNonPodResizeUpdates(t *testing.T) {
 | 
				
			|||||||
			tc.expected.Namespace = "test-ns"
 | 
								tc.expected.Namespace = "test-ns"
 | 
				
			||||||
			tc.expected.ResourceVersion = "123"
 | 
								tc.expected.ResourceVersion = "123"
 | 
				
			||||||
			tc.expected.UID = "abc"
 | 
								tc.expected.UID = "abc"
 | 
				
			||||||
			got := dropNonPodResizeUpdates(tc.newPod, tc.oldPod)
 | 
								ctx := context.Background()
 | 
				
			||||||
			if !cmp.Equal(tc.expected, got) {
 | 
								ResizeStrategy.PrepareForUpdate(ctx, tc.newPod, tc.oldPod)
 | 
				
			||||||
				t.Errorf("dropNonPodResizeUpdates() diff = %v", cmp.Diff(tc.expected, got))
 | 
								if !cmp.Equal(tc.expected, tc.newPod) {
 | 
				
			||||||
 | 
									t.Errorf("ResizeStrategy.PrepareForUpdate() diff = %v", cmp.Diff(tc.expected, tc.newPod))
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
		})
 | 
							})
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user