mirror of
				https://github.com/optim-enterprises-bv/kubernetes.git
				synced 2025-10-31 18:28:13 +00:00 
			
		
		
		
	Merge pull request #40269 from tanshanshan/unittest-scheduler-default
Automatic merge from submit-queue (batch tested with PRs 41937, 41151, 42092, 40269, 42135) Improve code coverage for scheduler/algorithmprovider/defaults **What this PR does / why we need it**: Improve code coverage for scheduler/algorithmprovider/defaults from #39559 Thanks for your review. **Special notes for your reviewer**: **Release note**: ```release-note ```
This commit is contained in:
		| @@ -28,7 +28,10 @@ go_library( | |||||||
|  |  | ||||||
| go_test( | go_test( | ||||||
|     name = "go_default_test", |     name = "go_default_test", | ||||||
|     srcs = ["compatibility_test.go"], |     srcs = [ | ||||||
|  |         "compatibility_test.go", | ||||||
|  |         "defaults_test.go", | ||||||
|  |     ], | ||||||
|     library = ":go_default_library", |     library = ":go_default_library", | ||||||
|     tags = ["automanaged"], |     tags = ["automanaged"], | ||||||
|     deps = [ |     deps = [ | ||||||
|   | |||||||
| @@ -41,6 +41,7 @@ const ( | |||||||
| 	DefaultMaxAzureDiskVolumes = 16 | 	DefaultMaxAzureDiskVolumes = 16 | ||||||
| 	ClusterAutoscalerProvider  = "ClusterAutoscalerProvider" | 	ClusterAutoscalerProvider  = "ClusterAutoscalerProvider" | ||||||
| 	StatefulSetKind            = "StatefulSet" | 	StatefulSetKind            = "StatefulSet" | ||||||
|  | 	KubeMaxPDVols              = "KUBE_MAX_PD_VOLS" | ||||||
| ) | ) | ||||||
|  |  | ||||||
| func init() { | func init() { | ||||||
| @@ -217,7 +218,7 @@ func defaultPriorities() sets.String { | |||||||
|  |  | ||||||
| // getMaxVols checks the max PD volumes environment variable, otherwise returning a default value | // getMaxVols checks the max PD volumes environment variable, otherwise returning a default value | ||||||
| func getMaxVols(defaultVal int) int { | func getMaxVols(defaultVal int) int { | ||||||
| 	if rawMaxVols := os.Getenv("KUBE_MAX_PD_VOLS"); rawMaxVols != "" { | 	if rawMaxVols := os.Getenv(KubeMaxPDVols); rawMaxVols != "" { | ||||||
| 		if parsedMaxVols, err := strconv.Atoi(rawMaxVols); err != nil { | 		if parsedMaxVols, err := strconv.Atoi(rawMaxVols); err != nil { | ||||||
| 			glog.Errorf("Unable to parse maxiumum PD volumes value, using default of %v: %v", defaultVal, err) | 			glog.Errorf("Unable to parse maxiumum PD volumes value, using default of %v: %v", defaultVal, err) | ||||||
| 		} else if parsedMaxVols <= 0 { | 		} else if parsedMaxVols <= 0 { | ||||||
|   | |||||||
| @@ -0,0 +1,62 @@ | |||||||
|  | /* | ||||||
|  | Copyright 2017 The Kubernetes Authors. | ||||||
|  |  | ||||||
|  | Licensed under the Apache License, Version 2.0 (the "License"); | ||||||
|  | you may not use this file except in compliance with the License. | ||||||
|  | You may obtain a copy of the License at | ||||||
|  |  | ||||||
|  |     http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  |  | ||||||
|  | Unless required by applicable law or agreed to in writing, software | ||||||
|  | distributed under the License is distributed on an "AS IS" BASIS, | ||||||
|  | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||||
|  | See the License for the specific language governing permissions and | ||||||
|  | limitations under the License. | ||||||
|  | */ | ||||||
|  |  | ||||||
|  | package defaults | ||||||
|  |  | ||||||
|  | import ( | ||||||
|  | 	"os" | ||||||
|  | 	"testing" | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | func TestGetMaxVols(t *testing.T) { | ||||||
|  | 	previousValue := os.Getenv(KubeMaxPDVols) | ||||||
|  | 	defaultValue := 39 | ||||||
|  |  | ||||||
|  | 	tests := []struct { | ||||||
|  | 		rawMaxVols string | ||||||
|  | 		expected   int | ||||||
|  | 		test       string | ||||||
|  | 	}{ | ||||||
|  | 		{ | ||||||
|  | 			rawMaxVols: "invalid", | ||||||
|  | 			expected:   defaultValue, | ||||||
|  | 			test:       "Unable to parse maxiumum PD volumes value, using default value", | ||||||
|  | 		}, | ||||||
|  | 		{ | ||||||
|  | 			rawMaxVols: "-2", | ||||||
|  | 			expected:   defaultValue, | ||||||
|  | 			test:       "Maximum PD volumes must be a positive value, using default value", | ||||||
|  | 		}, | ||||||
|  | 		{ | ||||||
|  | 			rawMaxVols: "40", | ||||||
|  | 			expected:   40, | ||||||
|  | 			test:       "Parse maximum PD volumes value from env", | ||||||
|  | 		}, | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	for _, test := range tests { | ||||||
|  | 		os.Setenv(KubeMaxPDVols, test.rawMaxVols) | ||||||
|  | 		result := getMaxVols(defaultValue) | ||||||
|  | 		if result != test.expected { | ||||||
|  | 			t.Errorf("%s: expected %v got %v", test.test, test.expected, result) | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	os.Unsetenv(KubeMaxPDVols) | ||||||
|  | 	if previousValue != "" { | ||||||
|  | 		os.Setenv(KubeMaxPDVols, previousValue) | ||||||
|  | 	} | ||||||
|  | } | ||||||
		Reference in New Issue
	
	Block a user
	 Kubernetes Submit Queue
					Kubernetes Submit Queue