@@ -296,3 +296,37 @@ def test_logic(mock_icurl, mock_run_cmd, cversion, expected_result):
296296 cver = script .AciVersion (cversion ) if cversion else None
297297 result = script .apic_database_size_check (1 , 1 , cver )
298298 assert result == expected_result
299+
300+
301+ @pytest .mark .parametrize (
302+ "icurl_outputs, cmd_outputs, cversion, expected_result" ,
303+ [
304+ # If user does not have permissions to run acidiag, flag MANUAL
305+ (
306+ {apic_node_api : read_data (dir , 'infraWiNode_4.json' )},
307+ {
308+ apic1_acidiag : {"CalledProcessError" : True },
309+ apic2_acidiag : {"CalledProcessError" : True },
310+ apic3_acidiag : {"CalledProcessError" : True },
311+ },
312+ "6.1(3f)" ,
313+ script .MANUAL ,
314+ ),
315+ # If user has permissions to run acidiag but command fails, flag ERROR
316+ (
317+ {apic_node_api : read_data (dir , 'infraWiNode_4.json' )},
318+ {
319+ apic1_acidiag : {"CalledProcessError" : True },
320+ apic2_acidiag : {"CalledProcessError" : True },
321+ apic3_acidiag : {"CalledProcessError" : True },
322+ apic4_acidiag : {"CalledProcessError" : True },
323+ },
324+ "6.1(3f)" ,
325+ script .MANUAL ,
326+ ),
327+ ],
328+ )
329+ def test_permission_logic (mock_icurl , mock_run_cmd , cversion , expected_result ):
330+ cver = script .AciVersion (cversion ) if cversion else None
331+ result = script .apic_database_size_check (1 , 1 , cver )
332+ assert result == expected_result
0 commit comments