Merge pull request #82697 from sttts/sttts-TestBlockMapperMapDeviceNotSupportAttach-race

Fix TestBlockMapperMapDeviceNotSupportAttach informer sync race
This commit is contained in:
Kubernetes Prow Robot 2019-09-13 03:32:29 -07:00 committed by GitHub
commit 8126201b73
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -358,8 +358,7 @@ func TestBlockMapperMapDevice(t *testing.T) {
func TestBlockMapperMapDeviceNotSupportAttach(t *testing.T) { func TestBlockMapperMapDeviceNotSupportAttach(t *testing.T) {
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.CSIBlockVolume, true)() defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.CSIBlockVolume, true)()
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.CSIDriverRegistry, true)() defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.CSIDriverRegistry, true)()
plug, tmpDir := newTestPlugin(t, nil)
defer os.RemoveAll(tmpDir)
fakeClient := fakeclient.NewSimpleClientset() fakeClient := fakeclient.NewSimpleClientset()
attachRequired := false attachRequired := false
fakeDriver := &v1beta1.CSIDriver{ fakeDriver := &v1beta1.CSIDriver{
@ -370,17 +369,23 @@ func TestBlockMapperMapDeviceNotSupportAttach(t *testing.T) {
AttachRequired: &attachRequired, AttachRequired: &attachRequired,
}, },
} }
_, err := plug.host.GetKubeClient().StorageV1beta1().CSIDrivers().Create(fakeDriver) _, err := fakeClient.StorageV1beta1().CSIDrivers().Create(fakeDriver)
if err != nil { if err != nil {
t.Fatalf("Failed to create a fakeDriver: %v", err) t.Fatalf("Failed to create a fakeDriver: %v", err)
} }
// after the driver is created, create the plugin. newTestPlugin waits for the informer to sync,
// such that csiMapper.SetUpDevice below sees the VolumeAttachment object in the lister.
plug, tmpDir := newTestPlugin(t, fakeClient)
defer os.RemoveAll(tmpDir)
host := volumetest.NewFakeVolumeHostWithCSINodeName( host := volumetest.NewFakeVolumeHostWithCSINodeName(
tmpDir, tmpDir,
fakeClient, fakeClient,
nil, nil,
"fakeNode", "fakeNode",
nil, plug.csiDriverLister,
) )
plug.host = host plug.host = host
csiMapper, _, _, err := prepareBlockMapperTest(plug, "test-pv", t) csiMapper, _, _, err := prepareBlockMapperTest(plug, "test-pv", t)