summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorNitin Goyal <nigoyal@redhat.com>2019-09-12 13:01:50 +0530
committerNitin Goyal <nigoyal@redhat.com>2019-09-16 16:17:38 +0530
commit8dd2df0d75b6241da28ee24904ea00b718566360 (patch)
tree022402a60945aa6d8680148375a17de4fcef823d /tests
parent046244942f7ad3f5f24b675dfa299ad955f1412f (diff)
Add TC missing parameters in SC
Add new TC missing parameters for file storage class and verify PVC pending state. Change-Id: Ibd8f418934da261058adb4127e60f85465a5ef75
Diffstat (limited to 'tests')
-rw-r--r--tests/functional/provisioning/test_storage_class_cases.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/functional/provisioning/test_storage_class_cases.py b/tests/functional/provisioning/test_storage_class_cases.py
index 655565cc..009504c7 100644
--- a/tests/functional/provisioning/test_storage_class_cases.py
+++ b/tests/functional/provisioning/test_storage_class_cases.py
@@ -24,6 +24,7 @@ from openshiftstoragelibs.openshift_ops import (
oc_get_custom_resource,
oc_get_pods,
scale_dc_pod_amount_and_wait,
+ verify_pvc_status_is_bound,
wait_for_events,
wait_for_pod_be_ready,
wait_for_resource_absence,
@@ -353,3 +354,32 @@ class TestStorageClassCases(BaseClass):
self.create_and_wait_for_pvc(sc_name=sc_name)
with self.assertRaises(AssertionError):
self.create_storage_class(sc_name=sc_name)
+
+ @ddt.data('secretName', 'secretNamespace', None)
+ def test_sc_glusterfile_missing_parameter(self, parameter):
+ """Validate glusterfile storage with missing parameters"""
+ node, sc = self.ocp_master_node[0], self.sc
+ secret_name = self.create_secret()
+
+ parameters = {'resturl': sc['resturl'], 'restuser': sc['restuser']}
+ if parameter == 'secretName':
+ parameters['secretName'] = secret_name
+ elif parameter == 'secretNamespace':
+ parameters['secretNamespace'] = sc['secretnamespace']
+
+ sc_name = oc_create_sc(node, **parameters)
+ self.addCleanup(oc_delete, node, 'sc', sc_name)
+
+ # Create PVC
+ pvc_name = oc_create_pvc(node, sc_name)
+ self.addCleanup(wait_for_resource_absence, node, 'pvc', pvc_name)
+ self.addCleanup(oc_delete, node, 'pvc', pvc_name)
+
+ # Wait for event with error
+ wait_for_events(
+ node, obj_name=pvc_name, obj_type='PersistentVolumeClaim',
+ event_reason='ProvisioningFailed')
+
+ # Verify PVC did not get bound
+ with self.assertRaises(AssertionError):
+ verify_pvc_status_is_bound(node, pvc_name, timeout=1)