type testConfig …
var deletePeriod …
var deleteOption …
var modeWait …
var modeImmediate …
var classWait …
var classImmediate …
var classDynamic …
var classTopoMismatch …
var sharedClasses …
const node1 …
const node2 …
const podLimit …
const volsPerPod …
const nodeAffinityLabelKey …
const provisionerPluginName …
type testPV …
type testPVC …
func TestVolumeBinding(t *testing.T) { … }
func TestVolumeBindingRescheduling(t *testing.T) { … }
func TestVolumeBindingStress(t *testing.T) { … }
func TestVolumeBindingStressWithSchedulerResync(t *testing.T) { … }
func TestVolumeBindingDynamicStressFast(t *testing.T) { … }
func TestVolumeBindingDynamicStressSlow(t *testing.T) { … }
func testVolumeBindingStress(t *testing.T, schedulerResyncPeriod time.Duration, dynamic bool, provisionDelaySeconds int) { … }
func testVolumeBindingWithAffinity(t *testing.T, anti bool, numNodes, numPods, numPVsFirstNode int) { … }
func TestVolumeBindingWithAntiAffinity(t *testing.T) { … }
func TestVolumeBindingWithAffinity(t *testing.T) { … }
func TestPVAffinityConflict(t *testing.T) { … }
func TestVolumeProvision(t *testing.T) { … }
func TestCapacity(t *testing.T) { … }
func TestRescheduleProvisioning(t *testing.T) { … }
func setupCluster(t *testing.T, nsName string, numberOfNodes int, resyncPeriod time.Duration, provisionDelaySeconds int) *testConfig { … }
func initPVController(t *testing.T, testCtx *testutil.TestContext, provisionDelaySeconds int) (*persistentvolume.PersistentVolumeController, informers.SharedInformerFactory, error) { … }
func deleteTestObjects(client clientset.Interface, ns string, option metav1.DeleteOptions) { … }
func makeStorageClass(name string, mode *storagev1.VolumeBindingMode) *storagev1.StorageClass { … }
func makeDynamicProvisionerStorageClass(name string, mode *storagev1.VolumeBindingMode, allowedTopologies []v1.TopologySelectorTerm) *storagev1.StorageClass { … }
func makePV(name, scName, pvcName, ns, node string) *v1.PersistentVolume { … }
func makePVC(name, ns string, scName *string, volumeName string) *v1.PersistentVolumeClaim { … }
func makePod(name, ns string, pvcs []string) *v1.Pod { … }
func makeNode(index int) *v1.Node { … }
func validatePVCPhase(t *testing.T, client clientset.Interface, pvcName string, ns string, phase v1.PersistentVolumeClaimPhase, isProvisioned bool) { … }
func validateProvisionAnn(claim *v1.PersistentVolumeClaim, volIsProvisioned bool) error { … }
func waitForProvisionAnn(client clientset.Interface, pvc *v1.PersistentVolumeClaim, annShouldExist bool) error { … }
func validatePVPhase(t *testing.T, client clientset.Interface, pvName string, phase v1.PersistentVolumePhase) { … }
func waitForPVPhase(client clientset.Interface, pvName string, phase v1.PersistentVolumePhase) error { … }
func waitForPVCBound(client clientset.Interface, pvc *v1.PersistentVolumeClaim) error { … }
func markNodeAffinity(pod *v1.Pod, node string) { … }
func markNodeSelector(pod *v1.Pod, node string) { … }