Merge pull request #42157 from jsafrane/fix-zone-test

Automatic merge from submit-queue

Fix test for provisioning in unmanaged zone.

defer evaluates arguments of the deferred function immediately, so it actually
deleted a storage class and a claim before the test could do anything useful.

The test passed just accidentally, as the test is expected to time out. It
timed out from wrong reasons though.

@copejon @kubernetes/sig-storage-pr-reviews 

```release-note
NONE
```
This commit is contained in:
Kubernetes Submit Queue
2017-03-24 13:19:28 -07:00
committed by GitHub

View File

@@ -201,13 +201,18 @@ var _ = framework.KubeDescribe("Dynamic provisioning", func() {
sc, err = c.StorageV1().StorageClasses().Create(sc)
defer Expect(c.StorageV1().StorageClasses().Delete(sc.Name, nil)).To(Succeed())
Expect(err).NotTo(HaveOccurred())
defer func() {
Expect(c.StorageV1().StorageClasses().Delete(sc.Name, nil)).To(Succeed())
}()
By("Creating a claim and expecting it to timeout")
pvc := newClaim(ns)
pvc.Spec.StorageClassName = &sc.Name
pvc, err = c.Core().PersistentVolumeClaims(ns).Create(pvc)
defer Expect(c.Core().PersistentVolumeClaims(ns).Delete(pvc.Name, nil)).To(Succeed())
Expect(err).NotTo(HaveOccurred())
defer func() {
Expect(c.Core().PersistentVolumeClaims(ns).Delete(pvc.Name, nil)).To(Succeed())
}()
// The claim should timeout phase:Pending
err = framework.WaitForPersistentVolumeClaimPhase(v1.ClaimBound, c, ns, pvc.Name, 2*time.Second, framework.ClaimProvisionTimeout)