Merge pull request #101997 from shawnhanx/pvcquota

Add unit tests for pvc quota
This commit is contained in:
Kubernetes Prow Robot
2022-06-01 15:49:46 -07:00
committed by GitHub

View File

@@ -17,6 +17,7 @@ limitations under the License.
package core
import (
"reflect"
"testing"
corev1 "k8s.io/api/core/v1"
@@ -181,3 +182,45 @@ func getPVCWithAllocatedResource(pvcSize, allocatedSize string) *api.PersistentV
}
return validPVCWithAllocatedResources
}
func TestPersistentVolumeClaimEvaluatorMatchingResources(t *testing.T) {
evaluator := NewPersistentVolumeClaimEvaluator(nil)
testCases := map[string]struct {
items []corev1.ResourceName
want []corev1.ResourceName
}{
"supported-resources": {
items: []corev1.ResourceName{
"count/persistentvolumeclaims",
"requests.storage",
"persistentvolumeclaims",
"gold.storageclass.storage.k8s.io/requests.storage",
"gold.storageclass.storage.k8s.io/persistentvolumeclaims",
},
want: []corev1.ResourceName{
"count/persistentvolumeclaims",
"requests.storage",
"persistentvolumeclaims",
"gold.storageclass.storage.k8s.io/requests.storage",
"gold.storageclass.storage.k8s.io/persistentvolumeclaims",
},
},
"unsupported-resources": {
items: []corev1.ResourceName{
"storage",
"ephemeral-storage",
"bronze.storageclass.storage.k8s.io/storage",
"gold.storage.k8s.io/requests.storage",
},
want: []corev1.ResourceName{},
},
}
for testName, testCase := range testCases {
actual := evaluator.MatchingResources(testCase.items)
if !reflect.DeepEqual(testCase.want, actual) {
t.Errorf("%s expected:\n%v\n, actual:\n%v", testName, testCase.want, actual)
}
}
}