1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
import ddt
from glusto.core import Glusto as g
from cnslibs.cns import cns_baseclass
from cnslibs.common.dynamic_provisioning import (
verify_pvc_status_is_bound,
)
from cnslibs.common.openshift_ops import (
oc_create_pvc,
oc_create_sc,
oc_create_secret,
oc_delete,
wait_for_resource_absence,
)
@ddt.ddt
class TestStorageClassCases(cns_baseclass.CnsBaseClass):
@ddt.data(
{"volumetype": "dist-rep:3"},
{"resturl": "http://10.0.0.1:8080"},
{"secretname": "fakesecretname"},
{"secretnamespace": "fakenamespace"},
{"restuser": "fakeuser"},
)
def test_sc_glusterfile_incorrect_parameter(
self, parameter={}):
# Polarion testcase id- CNS-708,709,713,714,715
sc = self.cns_storage_class['storage_class1']
secret = self.cns_secret['secret1']
# Create secret file for usage in storage class
self.secret_name = oc_create_secret(
self.ocp_master_node[0], namespace=secret['namespace'],
data_key=self.heketi_cli_key, secret_type=secret['type'])
self.addCleanup(
oc_delete, self.ocp_master_node[0], 'secret', self.secret_name)
sc_parameter = {
"resturl": sc['resturl'],
"secretnamespace": sc['secretnamespace'],
"secretname": self.secret_name,
"restuser": sc['restuser'],
"volumetype": "replicate:3"
}
sc_parameter.update(parameter)
# Create storage class
self.sc_name = oc_create_sc(
self.ocp_master_node[0], **sc_parameter)
self.addCleanup(oc_delete, self.ocp_master_node[0], 'sc', self.sc_name)
# Create PVC
self.pvc_name = oc_create_pvc(self.ocp_client[0], self.sc_name)
self.addCleanup(
wait_for_resource_absence, self.ocp_master_node[0],
'pvc', self.pvc_name)
self.addCleanup(oc_delete, self.ocp_master_node[0],
'pvc', self.pvc_name)
try:
verify_pvc_status_is_bound(self.ocp_master_node[0], self.pvc_name)
except AssertionError:
g.log.info("pvc %s is not in bound state as expected" % (
self.pvc_name))
else:
err_msg = ("pvc %s in bound state, was expected to fail" % (
self.pvc_name))
g.log.error(err_msg)
raise AssertionError(err_msg)
|