def test_function_return_value_different_args(): """ Проверка работы функции на других адресах """ list_of_ips_and_ranges = [ "10.1.1.1", "10.4.10.10-13", "192.168.1.12-192.168.1.15" ] correct_return_value = [ "10.1.1.1", "10.4.10.10", "10.4.10.11", "10.4.10.12", "10.4.10.13", "192.168.1.12", "192.168.1.13", "192.168.1.14", "192.168.1.15", ] return_value = task_12_2.convert_ranges_to_ip_list(list_of_ips_and_ranges) assert return_value != None, "Функция ничего не возвращает" assert ( type(return_value) == list ), f"По заданию функция должна возвращать список, а возвращает {type(return_value).__name__}" assert sorted(correct_return_value) == sorted( return_value), "Функция возвращает неправильное значение"
def test_function_return_value(list_of_ips_and_ranges): correct_return_value = [ '8.8.4.4', '1.1.1.1', '1.1.1.2', '1.1.1.3', '172.21.41.128', '172.21.41.129', '172.21.41.130', '172.21.41.131', '172.21.41.132' ] return_value = task_12_2.convert_ranges_to_ip_list(list_of_ips_and_ranges) assert return_value != None, "Функция ничего не возвращает" assert type(return_value) == list, "Функция должна возвращать список" assert return_value == correct_return_value, "Функция возвращает неправильное значение"
def test_function_return_value(): list_of_ips_and_ranges = ["8.8.4.4", "1.1.1.1-3", "172.21.41.128-172.21.41.132"] correct_return_value = [ "8.8.4.4", "1.1.1.1", "1.1.1.2", "1.1.1.3", "172.21.41.128", "172.21.41.129", "172.21.41.130", "172.21.41.131", "172.21.41.132", ] return_value = task_12_2.convert_ranges_to_ip_list(list_of_ips_and_ranges) assert return_value != None, "Функция ничего не возвращает" assert type(return_value) == list, "Функция должна возвращать список" assert ( return_value == correct_return_value ), "Функция возвращает неправильное значение"
def test_function_return_value_different_args(): list_of_ips_and_ranges = [ "10.1.1.1", "10.4.10.10-13", "192.168.1.12-192.168.1.15" ] correct_return_value = [ "10.1.1.1", "10.4.10.10", "10.4.10.11", "10.4.10.12", "10.4.10.13", "192.168.1.12", "192.168.1.13", "192.168.1.14", "192.168.1.15", ] return_value = task_12_2.convert_ranges_to_ip_list(list_of_ips_and_ranges) assert return_value != None, "The function returns None" assert ( type(return_value) == list ), f"The function should return a list, instead it returns a {type(return_value).__name__}" assert sorted(correct_return_value) == sorted( return_value), "Function returns wrong value"
def test_function_return_value(): """ Function check """ list_of_ips_and_ranges = [ "8.8.4.4", "1.1.1.1-3", "172.21.41.128-172.21.41.132" ] correct_return_value = [ "8.8.4.4", "1.1.1.1", "1.1.1.2", "1.1.1.3", "172.21.41.128", "172.21.41.129", "172.21.41.130", "172.21.41.131", "172.21.41.132", ] return_value = task_12_2.convert_ranges_to_ip_list(list_of_ips_and_ranges) assert return_value != None, "The function returns None" assert type(return_value) == list, "The function should return a list" assert sorted(correct_return_value) == sorted( return_value), "Function returns wrong value"
* список недоступных IP-адресов Результат работы функции - вывод на стандартный поток вывода таблицы вида: Reachable Unreachable ----------- ------------- 10.1.1.1 10.1.1.7 10.1.1.2 10.1.1.8 10.1.1.9 """ from tabulate import tabulate from task_12_1 import ping_ip_addresses from task_12_2 import convert_ranges_to_ip_list def print_ip_table(reach, unreach): table = {"Reachable": reach, "Unreachable": unreach} tabulated_table = tabulate(table, headers='keys') print(table) return tabulated_table if __name__ == "__main__": input_str = input('Введите адреса(,): ') input_list = [i.strip() for i in input_str.split(',')] list_of_ips = (convert_ranges_to_ip_list(input_list)) reach, unreach = ping_ip_addresses(list_of_ips) print(print_ip_table(reach, unreach))
Функция ожидает как аргументы два списка: * список доступных IP-адресов * список недоступных IP-адресов Результат работы функции - вывод на стандартный поток вывода таблицы вида: Reachable Unreachable ----------- ------------- 10.1.1.1 10.1.1.7 10.1.1.2 10.1.1.8 10.1.1.9 Функция не должна изменять списки, которые переданы ей как аргументы. То есть, до выполнения функции и после списки должны выглядеть одинаково. Для этого задания нет тестов ''' from task_12_1 import ping_ip_addresses from task_12_2 import convert_ranges_to_ip_list from tabulate import tabulate #не запускать при импорте if __name__ == "__main__": diapazon_list = [] while True: ip_or_diapazon = input(': ') if ip_or_diapazon == ' ': break diapazon_list.append(ip_or_diapazon) tup = ping_ip_addresses(convert_ranges_to_ip_list(diapazon_list)) print(tabulate(list(zip(tup[0], tup[1])), headers=['Reachable', 'Unreachable'], tablefmt='grid'))