@@ -35,7 +35,37 @@ def check_table_doesnt_exists(db, table, key):
35
35
return True , error_info
36
36
37
37
38
-
38
+ def create_mclag_domain (dvs , domain_id , source_ip , peer_ip , peer_link ):
39
+ tbl = swsscommon .Table (dvs .cdb , "MCLAG_DOMAIN" )
40
+ fvs = swsscommon .FieldValuePairs ([("source_ip" , source_ip ),
41
+ ("peer_ip" , peer_ip ),
42
+ ("peer_link" , peer_link )])
43
+ tbl .set (domain_id , fvs )
44
+ time .sleep (1 )
45
+
46
+ def remove_mclag_domain (dvs , domain_id ):
47
+ tbl = swsscommon .Table (dvs .cdb , "MCLAG_DOMAIN" )
48
+ tbl ._del (domain_id )
49
+ time .sleep (1 )
50
+
51
+ def add_mclag_domain_field (dvs , domain_id , field , value ):
52
+ tbl = swsscommon .Table (dvs .cdb , "MCLAG_DOMAIN" )
53
+ fvs = swsscommon .FieldValuePairs ([(field , value )])
54
+ tbl .set (domain_id , fvs )
55
+ time .sleep (1 )
56
+
57
+ def create_mclag_interface (dvs , domain_id , mclag_interface ):
58
+ tbl = swsscommon .Table (dvs .cdb , "MCLAG_INTERFACE" )
59
+ fvs = swsscommon .FieldValuePairs ([("if_type" , "PortChannel" )])
60
+ key_string = domain_id + "|" + mclag_interface
61
+ tbl .set (key_string , fvs )
62
+ time .sleep (1 )
63
+
64
+ def remove_mclag_interface (dvs , domain_id , mclag_interface ):
65
+ tbl = swsscommon .Table (dvs .cdb , "MCLAG_INTERFACE" )
66
+ key_string = domain_id + "|" + mclag_interface
67
+ tbl ._del (key_string )
68
+ time .sleep (1 )
39
69
40
70
# Test MCLAG Configs
41
71
class TestMclagConfig (object ):
@@ -72,8 +102,7 @@ def test_mclag_cfg_domain_add(self, dvs, testlog):
72
102
delete_table_keys (self .cfg_db , self .CFG_MCLAG_DOMAIN_TABLE )
73
103
delete_table_keys (self .cfg_db , self .CFG_MCLAG_INTERFACE_TABLE )
74
104
75
- cmd_string = "config mclag add {} {} {} {}" .format (self .MCLAG_DOMAIN_ID , self .MCLAG_SRC_IP , self .MCLAG_PEER_IP , self .MCLAG_PEER_LINK )
76
- dvs .runcmd (cmd_string )
105
+ create_mclag_domain (dvs , self .MCLAG_DOMAIN_ID , self .MCLAG_SRC_IP , self .MCLAG_PEER_IP , self .MCLAG_PEER_LINK )
77
106
time .sleep (2 )
78
107
79
108
#check whether domain cfg table contents are same as configured values
@@ -90,8 +119,7 @@ def test_mclag_cfg_domain_add(self, dvs, testlog):
90
119
@pytest .mark .dev_sanity
91
120
def test_mclag_cfg_domain_add_2nd (self , dvs , testlog ):
92
121
self .cfg_db = swsscommon .DBConnector (swsscommon .CONFIG_DB , dvs .redis_sock , 0 )
93
- cmd_string = "config mclag add {} {} {} {}" .format (self .MCLAG_DOMAIN_2 , self .MCLAG_SRC_IP , self .MCLAG_PEER_IP , self .MCLAG_PEER_LINK )
94
- dvs .runcmd (cmd_string )
122
+ create_mclag_domain (dvs , self .MCLAG_DOMAIN_2 , self .MCLAG_SRC_IP , self .MCLAG_PEER_IP , self .MCLAG_PEER_LINK )
95
123
time .sleep (2 )
96
124
97
125
#check whether second domain config is not added to config db
@@ -105,8 +133,7 @@ def test_mclag_cfg_domain_add_2nd(self, dvs, testlog):
105
133
@pytest .mark .dev_sanity
106
134
def test_mclag_cfg_intf_add (self , dvs , testlog ):
107
135
self .cfg_db = swsscommon .DBConnector (swsscommon .CONFIG_DB , dvs .redis_sock , 0 )
108
- cmd_string = "config mclag member add {} {}" .format (self .MCLAG_DOMAIN_ID , self .MCLAG_INTERFACE1 )
109
- dvs .runcmd (cmd_string )
136
+ create_mclag_interface (dvs , self .MCLAG_DOMAIN_ID , self .MCLAG_INTERFACE1 )
110
137
time .sleep (2 )
111
138
112
139
#check whether mclag interface config is reflected
@@ -118,9 +145,7 @@ def test_mclag_cfg_intf_add(self, dvs, testlog):
118
145
@pytest .mark .dev_sanity
119
146
def test_mclag_cfg_intf_remove_and_add (self , dvs , testlog ):
120
147
self .cfg_db = swsscommon .DBConnector (swsscommon .CONFIG_DB , dvs .redis_sock , 0 )
121
-
122
- cmd_string = "config mclag member del {} {}" .format (self .MCLAG_DOMAIN_ID , self .MCLAG_INTERFACE1 )
123
- dvs .runcmd (cmd_string )
148
+ remove_mclag_interface (dvs , self .MCLAG_DOMAIN_ID , self .MCLAG_INTERFACE1 )
124
149
time .sleep (2 )
125
150
126
151
#check whether mclag interface is removed
@@ -129,8 +154,7 @@ def test_mclag_cfg_intf_remove_and_add(self, dvs, testlog):
129
154
assert ok ,error_info
130
155
131
156
#add different mclag interface
132
- cmd_string = "config mclag member del {} {}" .format (self .MCLAG_DOMAIN_ID , self .MCLAG_INTERFACE2 )
133
- dvs .runcmd (cmd_string )
157
+ create_mclag_interface (dvs , self .MCLAG_DOMAIN_ID , self .MCLAG_INTERFACE2 )
134
158
time .sleep (2 )
135
159
136
160
#check whether new mclag interface is added
@@ -144,8 +168,8 @@ def test_mclag_cfg_session_timeout_valid_values(self, dvs, testlog):
144
168
self .cfg_db = swsscommon .DBConnector (swsscommon .CONFIG_DB , dvs .redis_sock , 0 )
145
169
146
170
for value in self .MCLAG_SESS_TMOUT_VALID_LIST :
147
- cmd_string = "config mclag session-timeout {} {}" . format ( self .MCLAG_DOMAIN_ID , value )
148
- dvs . runcmd ( cmd_string )
171
+ add_mclag_domain_field ( dvs , self .MCLAG_DOMAIN_ID , "session_timeout" , value )
172
+
149
173
time .sleep (2 )
150
174
151
175
#check whether domain cfg table contents are same as configured values
@@ -165,10 +189,8 @@ def test_mclag_cfg_ka_valid_values(self, dvs, testlog):
165
189
self .cfg_db = swsscommon .DBConnector (swsscommon .CONFIG_DB , dvs .redis_sock , 0 )
166
190
167
191
for value in self .MCLAG_KA_VALID_LIST :
168
- cmd_string = "config mclag keepalive-interval {} {}" .format (self .MCLAG_DOMAIN_ID , value )
169
- dvs .runcmd (cmd_string )
192
+ add_mclag_domain_field (dvs , self .MCLAG_DOMAIN_ID , "keepalive_interval" , value )
170
193
time .sleep (2 )
171
-
172
194
#check whether domain cfg table contents are same as configured values
173
195
ok ,error_info = dvs .all_table_entry_has (self .cfg_db , self .CFG_MCLAG_DOMAIN_TABLE , self .MCLAG_DOMAIN_ID ,
174
196
[
@@ -188,8 +210,7 @@ def test_mclag_cfg_ka_invalid_values(self, dvs, testlog):
188
210
self .cfg_db = swsscommon .DBConnector (swsscommon .CONFIG_DB , dvs .redis_sock , 0 )
189
211
190
212
for value in self .MCLAG_KA_INVALID_LIST :
191
- cmd_string = "config mclag keepalive-interval {} {}" .format (self .MCLAG_DOMAIN_ID , value )
192
- dvs .runcmd (cmd_string )
213
+ add_mclag_domain_field (dvs , self .MCLAG_DOMAIN_ID , "keepalive_interval" , value )
193
214
time .sleep (2 )
194
215
195
216
#check whether domain cfg table contents are same as configured values
@@ -206,8 +227,7 @@ def test_mclag_cfg_session_invalid_values(self, dvs, testlog):
206
227
self .cfg_db = swsscommon .DBConnector (swsscommon .CONFIG_DB , dvs .redis_sock , 0 )
207
228
208
229
for value in self .MCLAG_SESS_TMOUT_INVALID_LIST :
209
- cmd_string = "config mclag session-timeout {} {}" .format (self .MCLAG_DOMAIN_ID , value )
210
- dvs .runcmd (cmd_string )
230
+ add_mclag_domain_field (dvs , self .MCLAG_DOMAIN_ID , "session_timeout" , value )
211
231
time .sleep (2 )
212
232
213
233
#check whether domain cfg table contents are same as configured values
@@ -223,8 +243,7 @@ def test_mclag_cfg_session_invalid_values(self, dvs, testlog):
223
243
def test_mclag_cfg_domain_del (self , dvs , testlog ):
224
244
self .cfg_db = swsscommon .DBConnector (swsscommon .CONFIG_DB , dvs .redis_sock , 0 )
225
245
226
- cmd_string = "config mclag del {}" .format (self .MCLAG_DOMAIN_ID )
227
- dvs .runcmd (cmd_string )
246
+ remove_mclag_domain (dvs , self .MCLAG_DOMAIN_ID )
228
247
time .sleep (2 )
229
248
230
249
#check whether domain cfg table contents are same as configured values
0 commit comments