def pfc_clear(expected_output): counters_file_list = ['0tx', '0rx'] del_cached_stats() return_code, result = get_result_and_return_code( 'pfcstat -c' ) # verify that files are created with stats uid = str(os.getuid()) cnstat_dir = os.path.join(os.sep, "tmp", "pfcstat-{}".format(uid)) cnstat_fqn_file_rx = "{}rx".format(uid) cnstat_fqn_file_tx = "{}tx".format(uid) file_list = [cnstat_fqn_file_tx, cnstat_fqn_file_rx] file_list.sort() files = os.listdir(cnstat_dir) files.sort() assert files == file_list return_code, result = get_result_and_return_code( 'pfcstat -s all' ) result_stat = [s for s in result.split("\n") if "Last cached" not in s] expected = expected_output.split("\n") # this will also verify the saved counters are correct since the # expected counters are all '0s' assert result_stat == expected del_cached_stats()
def test_clear_intf_counters(self): runner = CliRunner() result = runner.invoke(clear.cli.commands["counters"], []) print(result.exit_code) print(result.output) assert result.exit_code == 0 assert result.output.rstrip() == clear_counter return_code, result = get_result_and_return_code('portstat -c') print("return_code: {}".format(return_code)) print("result = {}".format(result)) assert return_code == 0 assert result.rstrip() == clear_counter # check counters after clear result = runner.invoke( show.cli.commands["interfaces"].commands["counters"], []) print(result.exit_code) print(result.output) assert result.exit_code == 0 verify_after_clear(result.output, intf_counter_after_clear) return_code, result = get_result_and_return_code('portstat') print("return_code: {}".format(return_code)) print("result = {}".format(result)) assert return_code == 0 verify_after_clear(result, intf_counter_after_clear)
def test_multi_asic_clear_intf_counters(self): return_code, result = get_result_and_return_code('portstat -c') print("return_code: {}".format(return_code)) print("result = {}".format(result)) assert return_code == 0 assert result.rstrip() == clear_counter # check stats for all the interfaces are cleared return_code, result = get_result_and_return_code('portstat -s all') print("return_code: {}".format(return_code)) print("result = {}".format(result)) assert return_code == 0 verify_after_clear(result, mutli_asic_intf_counters_after_clear)
def test_multi_show_intf_counters_period_asic_all(self): return_code, result = get_result_and_return_code( 'portstat -p {} -n asic0 -s all'.format(TEST_PERIOD)) print("return_code: {}".format(return_code)) print("result = {}".format(result)) assert return_code == 0 assert result == multi_asic_intf_counter_period_asic_all
def test_multi_show_intf_counters_printall_asic_all(self): return_code, result = get_result_and_return_code( 'portstat -a -n asic0 -s all') print("return_code: {}".format(return_code)) print("result = {}".format(result)) assert return_code == 0 assert result == multi_asic_intf_counters_asic0_printall
def test_invalid_asic_name(self): return_code, result = get_result_and_return_code( 'intfutil -c status -n asic99') print("return_code: {}".format(return_code)) print("result = {}".format(result)) assert return_code == 1 assert result == intf_invalid_asic_error
def test_multi_asic_interface_desc_asic0_all(self): return_code, result = get_result_and_return_code( 'intfutil -c description -n asic0 -d all') print("return_code: {}".format(return_code)) print("result = {}".format(result)) assert return_code == 0 assert result == intf_description_asic0_all
def test_multi_asic_interface_status_asic0(self): return_code, result = get_result_and_return_code( 'intfutil -c status -n asic0') print("return_code: {}".format(return_code)) print("result = {}".format(result)) assert return_code == 0 assert result == intf_status_asic0
def test_show_intf_counters_all(self): runner = CliRunner() result = runner.invoke( show.cli.commands["interfaces"].commands["counters"], ["--printall"]) print(result.exit_code) print(result.output) assert result.exit_code == 0 assert result.output == intf_counters_all return_code, result = get_result_and_return_code('portstat -a') print("return_code: {}".format(return_code)) print("result = {}".format(result)) assert return_code == 0 assert result == intf_counters_all
def test_show_intf_counters_period(self): runner = CliRunner() result = runner.invoke(show.cli.commands["interfaces"].commands["counters"], [ "-p {}".format(TEST_PERIOD)]) print(result.exit_code) print(result.output) assert result.exit_code == 0 assert result.output == intf_counters_period return_code, result = get_result_and_return_code( 'portstat -p {}'.format(TEST_PERIOD)) print("return_code: {}".format(return_code)) print("result = {}".format(result)) assert return_code == 0 assert result == intf_counters_period
def test_pfc_counters_asic_all(self): return_code, result = get_result_and_return_code( 'pfcstat -n asic0 -s all') assert return_code == 0 assert result == show_pfc_counters_all_asic
def test_pfc_counters_asic(self): return_code, result = get_result_and_return_code('pfcstat -n asic0') assert return_code == 0 assert result == show_pfc_counters_asic0_frontend
def test_multi_asic_invalid_asic(self): return_code, result = get_result_and_return_code('portstat -n asic99') print("return_code: {}".format(return_code)) print("result = {}".format(result)) assert return_code == 1 assert result == intf_invalid_asic_error
def test_multi_show_intf_counters_asic(self): return_code, result = get_result_and_return_code('portstat -n asic0') print("return_code: {}".format(return_code)) print("result = {}".format(result)) assert return_code == 0 assert result == multi_asic_external_intf_counters