added tests
This commit is contained in:
parent
c6392e630c
commit
9607c61390
@ -40,10 +40,13 @@ const (
|
|||||||
testBaseDirNested = "test/base/dir"
|
testBaseDirNested = "test/base/dir"
|
||||||
testCSIVolume = "volume-name"
|
testCSIVolume = "volume-name"
|
||||||
testVolumeID = "test-server/test-base-dir/volume-name"
|
testVolumeID = "test-server/test-base-dir/volume-name"
|
||||||
newTestVolumeID = "test-server#test-base-dir#volume-name#"
|
newTestVolumeID = "test-server#test-base-dir#volume-name##delete"
|
||||||
|
newTestVolumeWithVolumeID = "test-server#test-base-dir#volume-name#volume-name#delete"
|
||||||
testVolumeIDNested = "test-server/test/base/dir/volume-name"
|
testVolumeIDNested = "test-server/test/base/dir/volume-name"
|
||||||
newTestVolumeIDNested = "test-server#test/base/dir#volume-name#"
|
newTestVolumeIDNested = "test-server#test/base/dir#volume-name#"
|
||||||
newTestVolumeIDUUID = "test-server#test-base-dir#volume-name#uuid"
|
newTestVolumeIDUUID = "test-server#test-base-dir#volume-name#uuid"
|
||||||
|
newTestVolumeOnDeleteRetain = "test-server#test-base-dir#volume-name#uuid#retain"
|
||||||
|
newTestVolumeOnDeleteDelete = "test-server#test-base-dir#volume-name#uuid#delete"
|
||||||
)
|
)
|
||||||
|
|
||||||
func initTestController(t *testing.T) *ControllerServer {
|
func initTestController(t *testing.T) *ControllerServer {
|
||||||
@ -136,7 +139,7 @@ func TestCreateVolume(t *testing.T) {
|
|||||||
},
|
},
|
||||||
resp: &csi.CreateVolumeResponse{
|
resp: &csi.CreateVolumeResponse{
|
||||||
Volume: &csi.Volume{
|
Volume: &csi.Volume{
|
||||||
VolumeId: newTestVolumeID + testCSIVolume,
|
VolumeId: newTestVolumeWithVolumeID,
|
||||||
VolumeContext: map[string]string{
|
VolumeContext: map[string]string{
|
||||||
paramServer: testServer,
|
paramServer: testServer,
|
||||||
paramShare: testBaseDir,
|
paramShare: testBaseDir,
|
||||||
@ -246,6 +249,7 @@ func TestDeleteVolume(t *testing.T) {
|
|||||||
testOnWindows bool
|
testOnWindows bool
|
||||||
req *csi.DeleteVolumeRequest
|
req *csi.DeleteVolumeRequest
|
||||||
resp *csi.DeleteVolumeResponse
|
resp *csi.DeleteVolumeResponse
|
||||||
|
expectedDeleteSubDir bool
|
||||||
expectedErr error
|
expectedErr error
|
||||||
}{
|
}{
|
||||||
{
|
{
|
||||||
@ -254,6 +258,7 @@ func TestDeleteVolume(t *testing.T) {
|
|||||||
req: &csi.DeleteVolumeRequest{},
|
req: &csi.DeleteVolumeRequest{},
|
||||||
resp: nil,
|
resp: nil,
|
||||||
expectedErr: status.Error(codes.InvalidArgument, "Volume ID missing in request"),
|
expectedErr: status.Error(codes.InvalidArgument, "Volume ID missing in request"),
|
||||||
|
expectedDeleteSubDir: false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
desc: "Valid request",
|
desc: "Valid request",
|
||||||
@ -261,6 +266,7 @@ func TestDeleteVolume(t *testing.T) {
|
|||||||
req: &csi.DeleteVolumeRequest{VolumeId: testVolumeID},
|
req: &csi.DeleteVolumeRequest{VolumeId: testVolumeID},
|
||||||
resp: &csi.DeleteVolumeResponse{},
|
resp: &csi.DeleteVolumeResponse{},
|
||||||
expectedErr: nil,
|
expectedErr: nil,
|
||||||
|
expectedDeleteSubDir: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
desc: "Valid request with newTestVolumeID",
|
desc: "Valid request with newTestVolumeID",
|
||||||
@ -268,6 +274,15 @@ func TestDeleteVolume(t *testing.T) {
|
|||||||
req: &csi.DeleteVolumeRequest{VolumeId: newTestVolumeID},
|
req: &csi.DeleteVolumeRequest{VolumeId: newTestVolumeID},
|
||||||
resp: &csi.DeleteVolumeResponse{},
|
resp: &csi.DeleteVolumeResponse{},
|
||||||
expectedErr: nil,
|
expectedErr: nil,
|
||||||
|
expectedDeleteSubDir: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
desc: "Valid request with onDelete:retain",
|
||||||
|
testOnWindows: true,
|
||||||
|
req: &csi.DeleteVolumeRequest{VolumeId: newTestVolumeOnDeleteRetain},
|
||||||
|
resp: &csi.DeleteVolumeResponse{},
|
||||||
|
expectedErr: nil,
|
||||||
|
expectedDeleteSubDir: false,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -292,8 +307,13 @@ func TestDeleteVolume(t *testing.T) {
|
|||||||
if !reflect.DeepEqual(resp, test.resp) {
|
if !reflect.DeepEqual(resp, test.resp) {
|
||||||
t.Errorf("test %q failed: got resp %+v, expected %+v", test.desc, resp, test.resp)
|
t.Errorf("test %q failed: got resp %+v, expected %+v", test.desc, resp, test.resp)
|
||||||
}
|
}
|
||||||
if _, err := os.Stat(filepath.Join(cs.Driver.workingMountDir, testCSIVolume, testCSIVolume)); test.expectedErr == nil && !os.IsNotExist(err) {
|
|
||||||
|
if _, err := os.Stat(filepath.Join(cs.Driver.workingMountDir, testCSIVolume, testCSIVolume)); test.expectedErr == nil {
|
||||||
|
if !os.IsNotExist(err) && test.expectedDeleteSubDir {
|
||||||
t.Errorf("test %q failed: expected volume subdirectory deleted, it still exists", test.desc)
|
t.Errorf("test %q failed: expected volume subdirectory deleted, it still exists", test.desc)
|
||||||
|
} else if os.IsNotExist(err) && !test.expectedDeleteSubDir {
|
||||||
|
t.Errorf("test %q failed: expected volume subdirectory not deleted, it was deleted", test.desc)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -399,6 +419,7 @@ func TestNfsVolFromId(t *testing.T) {
|
|||||||
server: testServer,
|
server: testServer,
|
||||||
baseDir: testBaseDir,
|
baseDir: testBaseDir,
|
||||||
subDir: testCSIVolume,
|
subDir: testCSIVolume,
|
||||||
|
onDelete: "delete",
|
||||||
},
|
},
|
||||||
expectErr: false,
|
expectErr: false,
|
||||||
},
|
},
|
||||||
@ -436,6 +457,32 @@ func TestNfsVolFromId(t *testing.T) {
|
|||||||
},
|
},
|
||||||
expectErr: false,
|
expectErr: false,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: "valid request nested ondelete retain",
|
||||||
|
volumeID: newTestVolumeOnDeleteRetain,
|
||||||
|
resp: &nfsVolume{
|
||||||
|
id: newTestVolumeOnDeleteRetain,
|
||||||
|
server: testServer,
|
||||||
|
baseDir: testBaseDir,
|
||||||
|
subDir: testCSIVolume,
|
||||||
|
uuid: "uuid",
|
||||||
|
onDelete: "retain",
|
||||||
|
},
|
||||||
|
expectErr: false,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "valid request nested ondelete delete",
|
||||||
|
volumeID: newTestVolumeOnDeleteDelete,
|
||||||
|
resp: &nfsVolume{
|
||||||
|
id: newTestVolumeOnDeleteDelete,
|
||||||
|
server: testServer,
|
||||||
|
baseDir: testBaseDir,
|
||||||
|
subDir: testCSIVolume,
|
||||||
|
uuid: "uuid",
|
||||||
|
onDelete: "delete",
|
||||||
|
},
|
||||||
|
expectErr: false,
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, test := range cases {
|
for _, test := range cases {
|
||||||
@ -556,12 +603,13 @@ func TestNewNFSVolume(t *testing.T) {
|
|||||||
paramSubDir: "subdir",
|
paramSubDir: "subdir",
|
||||||
},
|
},
|
||||||
expectVol: &nfsVolume{
|
expectVol: &nfsVolume{
|
||||||
id: "nfs-server.default.svc.cluster.local#share#subdir#pv-name",
|
id: "nfs-server.default.svc.cluster.local#share#subdir#pv-name#delete",
|
||||||
server: "//nfs-server.default.svc.cluster.local",
|
server: "//nfs-server.default.svc.cluster.local",
|
||||||
baseDir: "share",
|
baseDir: "share",
|
||||||
subDir: "subdir",
|
subDir: "subdir",
|
||||||
size: 100,
|
size: 100,
|
||||||
uuid: "pv-name",
|
uuid: "pv-name",
|
||||||
|
onDelete: "delete",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -577,12 +625,13 @@ func TestNewNFSVolume(t *testing.T) {
|
|||||||
pvNameKey: "pvname",
|
pvNameKey: "pvname",
|
||||||
},
|
},
|
||||||
expectVol: &nfsVolume{
|
expectVol: &nfsVolume{
|
||||||
id: "nfs-server.default.svc.cluster.local#share#subdir-pvcname-pvcnamespace-pvname#pv-name",
|
id: "nfs-server.default.svc.cluster.local#share#subdir-pvcname-pvcnamespace-pvname#pv-name#delete",
|
||||||
server: "//nfs-server.default.svc.cluster.local",
|
server: "//nfs-server.default.svc.cluster.local",
|
||||||
baseDir: "share",
|
baseDir: "share",
|
||||||
subDir: "subdir-pvcname-pvcnamespace-pvname",
|
subDir: "subdir-pvcname-pvcnamespace-pvname",
|
||||||
size: 100,
|
size: 100,
|
||||||
uuid: "pv-name",
|
uuid: "pv-name",
|
||||||
|
onDelete: "delete",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -594,12 +643,13 @@ func TestNewNFSVolume(t *testing.T) {
|
|||||||
paramShare: "share",
|
paramShare: "share",
|
||||||
},
|
},
|
||||||
expectVol: &nfsVolume{
|
expectVol: &nfsVolume{
|
||||||
id: "nfs-server.default.svc.cluster.local#share#pv-name#",
|
id: "nfs-server.default.svc.cluster.local#share#pv-name##delete",
|
||||||
server: "//nfs-server.default.svc.cluster.local",
|
server: "//nfs-server.default.svc.cluster.local",
|
||||||
baseDir: "share",
|
baseDir: "share",
|
||||||
subDir: "pv-name",
|
subDir: "pv-name",
|
||||||
size: 200,
|
size: 200,
|
||||||
uuid: "",
|
uuid: "",
|
||||||
|
onDelete: "delete",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user