Split snapshot controller using beta APIs
This commit is contained in:
@@ -79,7 +79,6 @@ func TestCreateSnapshot(t *testing.T) {
|
||||
}
|
||||
|
||||
csiVolume := FakeCSIVolume()
|
||||
volumeWithoutCSI := FakeVolume()
|
||||
|
||||
defaultRequest := &csi.CreateSnapshotRequest{
|
||||
Name: defaultName,
|
||||
@@ -135,7 +134,7 @@ func TestCreateSnapshot(t *testing.T) {
|
||||
tests := []struct {
|
||||
name string
|
||||
snapshotName string
|
||||
volume *v1.PersistentVolume
|
||||
volumeHandle string
|
||||
parameters map[string]string
|
||||
secrets map[string]string
|
||||
input *csi.CreateSnapshotRequest
|
||||
@@ -147,7 +146,7 @@ func TestCreateSnapshot(t *testing.T) {
|
||||
{
|
||||
name: "success",
|
||||
snapshotName: defaultName,
|
||||
volume: csiVolume,
|
||||
volumeHandle: csiVolume.Spec.CSI.VolumeHandle,
|
||||
input: defaultRequest,
|
||||
output: defaultResponse,
|
||||
expectError: false,
|
||||
@@ -156,7 +155,7 @@ func TestCreateSnapshot(t *testing.T) {
|
||||
{
|
||||
name: "attributes",
|
||||
snapshotName: defaultName,
|
||||
volume: csiVolume,
|
||||
volumeHandle: csiVolume.Spec.CSI.VolumeHandle,
|
||||
parameters: defaultParameter,
|
||||
input: attributesRequest,
|
||||
output: defaultResponse,
|
||||
@@ -166,25 +165,17 @@ func TestCreateSnapshot(t *testing.T) {
|
||||
{
|
||||
name: "secrets",
|
||||
snapshotName: defaultName,
|
||||
volume: csiVolume,
|
||||
volumeHandle: csiVolume.Spec.CSI.VolumeHandle,
|
||||
secrets: createSecrets,
|
||||
input: secretsRequest,
|
||||
output: defaultResponse,
|
||||
expectError: false,
|
||||
expectResult: result,
|
||||
},
|
||||
{
|
||||
name: "fail for volume without csi source",
|
||||
snapshotName: defaultName,
|
||||
volume: volumeWithoutCSI,
|
||||
input: nil,
|
||||
output: nil,
|
||||
expectError: true,
|
||||
},
|
||||
{
|
||||
name: "gRPC transient error",
|
||||
snapshotName: defaultName,
|
||||
volume: csiVolume,
|
||||
volumeHandle: csiVolume.Spec.CSI.VolumeHandle,
|
||||
input: defaultRequest,
|
||||
output: nil,
|
||||
injectError: codes.DeadlineExceeded,
|
||||
@@ -193,7 +184,7 @@ func TestCreateSnapshot(t *testing.T) {
|
||||
{
|
||||
name: "gRPC final error",
|
||||
snapshotName: defaultName,
|
||||
volume: csiVolume,
|
||||
volumeHandle: csiVolume.Spec.CSI.VolumeHandle,
|
||||
input: defaultRequest,
|
||||
output: nil,
|
||||
injectError: codes.NotFound,
|
||||
@@ -224,7 +215,7 @@ func TestCreateSnapshot(t *testing.T) {
|
||||
}
|
||||
|
||||
s := NewSnapshotter(csiConn)
|
||||
driverName, snapshotId, timestamp, size, readyToUse, err := s.CreateSnapshot(context.Background(), test.snapshotName, test.volume, test.parameters, test.secrets)
|
||||
driverName, snapshotId, timestamp, size, readyToUse, err := s.CreateSnapshot(context.Background(), test.snapshotName, test.volumeHandle, test.parameters, test.secrets)
|
||||
if test.expectError && err == nil {
|
||||
t.Errorf("test %q: Expected error, got none", test.name)
|
||||
}
|
||||
@@ -509,29 +500,3 @@ func FakeCSIVolume() *v1.PersistentVolume {
|
||||
|
||||
return &volume
|
||||
}
|
||||
|
||||
func FakeVolume() *v1.PersistentVolume {
|
||||
volume := v1.PersistentVolume{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "fake-csi-volume",
|
||||
},
|
||||
Spec: v1.PersistentVolumeSpec{
|
||||
ClaimRef: &v1.ObjectReference{
|
||||
Kind: "PersistentVolumeClaim",
|
||||
APIVersion: "v1",
|
||||
UID: types.UID("uid123"),
|
||||
Namespace: "default",
|
||||
Name: "test-claim",
|
||||
},
|
||||
PersistentVolumeSource: v1.PersistentVolumeSource{
|
||||
GCEPersistentDisk: &v1.GCEPersistentDiskVolumeSource{},
|
||||
},
|
||||
StorageClassName: "default",
|
||||
},
|
||||
Status: v1.PersistentVolumeStatus{
|
||||
Phase: v1.VolumeBound,
|
||||
},
|
||||
}
|
||||
|
||||
return &volume
|
||||
}
|
||||
|
Reference in New Issue
Block a user