From 975f66f2eebe9dadba04f275774d4ab83f74cf25 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 13 Apr 2024 14:04:41 +0200 Subject: Adding upstream version 7.7.0+dfsg. Signed-off-by: Daniel Baumann --- .../integration/targets/ce_is_is_instance/aliases | 1 + .../targets/ce_is_is_instance/defaults/main.yaml | 3 + .../targets/ce_is_is_instance/meta/main.yml | 1 + .../targets/ce_is_is_instance/tasks/main.yaml | 7 + .../targets/ce_is_is_instance/tasks/netconf.yaml | 17 + .../tests/netconf/ce_is_is_instance.yaml | 85 ++ .../integration/targets/ce_is_is_interface/aliases | 1 + .../targets/ce_is_is_interface/defaults/main.yaml | 3 + .../targets/ce_is_is_interface/meta/main.yml | 1 + .../targets/ce_is_is_interface/tasks/main.yaml | 7 + .../targets/ce_is_is_interface/tasks/netconf.yaml | 17 + .../tests/netconf/ce_is_is_interface.yaml | 133 ++ .../integration/targets/ce_is_is_view/aliases | 1 + .../targets/ce_is_is_view/defaults/main.yaml | 3 + .../targets/ce_is_is_view/tasks/main.yaml | 7 + .../targets/ce_is_is_view/tasks/netconf.yaml | 17 + .../ce_is_is_view/tests/netconf/cleanup.yaml | 21 + .../targets/ce_is_is_view/tests/netconf/setup.yaml | 22 + .../tests/netconf/test_ce_is_is_view_entity .yaml | 78 ++ .../tests/netconf/test_ce_isis_bfd.yaml | 92 ++ .../tests/netconf/test_ce_isis_export.yaml | 96 ++ .../tests/netconf/test_ce_isis_import.yaml | 124 ++ .../tests/netconf/test_ce_isis_l1tol2.yaml | 109 ++ .../tests/netconf/test_ce_isis_l2tol1.yaml | 109 ++ .../tests/netconf/test_ce_isis_max_load.yaml | 80 ++ .../tests/netconf/test_ce_isis_preferences.yaml | 87 ++ .../tests/netconf/test_ce_isis_view_basic.yaml | 115 ++ .../tests/netconf/test_ce_issi_default.yaml | 111 ++ .../tests/netconf/test_isis_filter_import.yaml | 97 ++ .../tests/netconf/test_isis_next_hop.yaml | 87 ++ .../tests/integration/targets/ce_lacp/aliases | 1 + .../integration/targets/ce_lacp/defaults/main.yaml | 3 + .../integration/targets/ce_lacp/tasks/main.yaml | 7 + .../integration/targets/ce_lacp/tasks/netconf.yaml | 17 + .../targets/ce_lacp/tests/netconf/absent.yaml | 95 ++ .../targets/ce_lacp/tests/netconf/delete.yaml | 32 + .../targets/ce_lacp/tests/netconf/merge.yaml | 31 + .../targets/ce_lacp/tests/netconf/present.yaml | 103 ++ .../tests/integration/targets/ce_lldp/aliases | 1 + .../integration/targets/ce_lldp/defaults/main.yaml | 3 + .../integration/targets/ce_lldp/meta/main.yml | 1 + .../integration/targets/ce_lldp/tasks/main.yaml | 7 + .../integration/targets/ce_lldp/tasks/netconf.yaml | 17 + .../targets/ce_lldp/tests/netconf/absent.yaml | 108 ++ .../targets/ce_lldp/tests/netconf/clean.yaml | 20 + .../targets/ce_lldp/tests/netconf/present.yaml | 66 + .../integration/targets/ce_lldp_interface/aliases | 1 + .../targets/ce_lldp_interface/defaults/main.yaml | 3 + .../targets/ce_lldp_interface/meta/main.yml | 1 + .../targets/ce_lldp_interface/tasks/main.yaml | 7 + .../targets/ce_lldp_interface/tasks/netconf.yaml | 17 + .../tests/netconf/lldp_interface.yaml | 155 +++ .../integration/targets/ce_mdn_interface/aliases | 1 + .../targets/ce_mdn_interface/defaults/main.yaml | 3 + .../targets/ce_mdn_interface/tasks/main.yaml | 7 + .../targets/ce_mdn_interface/tasks/netconf.yaml | 17 + .../tests/netconf/ce_mdn_interface.yaml | 97 ++ .../targets/ce_multicast_global/aliases | 1 + .../targets/ce_multicast_global/defaults/main.yaml | 3 + .../targets/ce_multicast_global/tasks/main.yaml | 7 + .../targets/ce_multicast_global/tasks/netconf.yaml | 17 + .../tests/netconf/test_ce_multicast_global.yaml | 73 + .../targets/ce_multicast_igmp_enable/aliases | 1 + .../ce_multicast_igmp_enable/defaults/main.yaml | 3 + .../ce_multicast_igmp_enable/tasks/main.yaml | 7 + .../ce_multicast_igmp_enable/tasks/netconf.yaml | 17 + .../tests/netconf/ce_multicast_igmp_enable.yaml | 95 ++ .../targets/ce_static_route_bfd/aliases | 1 + .../targets/ce_static_route_bfd/defaults/main.yaml | 3 + .../targets/ce_static_route_bfd/tasks/main.yaml | 7 + .../targets/ce_static_route_bfd/tasks/netconf.yaml | 17 + .../tests/netconf/ce_static_route_bfd.yaml | 150 +++ .../ce_static_route_bfd/tests/netconf/cleanup.yaml | 31 + .../integration/targets/cnos_backup/README.md | 115 ++ .../tests/integration/targets/cnos_backup/aliases | 2 + .../targets/cnos_backup/cnos_backup_sample_hosts | 17 + .../integration/targets/cnos_backup/tasks/main.yml | 30 + .../integration/targets/cnos_backup/vars/main.yml | 12 + .../tests/integration/targets/cnos_banner/aliases | 2 + .../targets/cnos_banner/cnos_banner_sample_hosts | 14 + .../targets/cnos_banner/defaults/main.yaml | 2 + .../integration/targets/cnos_banner/tasks/cli.yaml | 22 + .../targets/cnos_banner/tasks/main.yaml | 7 + .../targets/cnos_banner/tests/cli/basic-login.yaml | 43 + .../targets/cnos_banner/tests/cli/basic-motd.yaml | 45 + .../cnos_banner/tests/cli/basic-no-login.yaml | 36 + .../integration/targets/cnos_banner/vars/main.yaml | 9 + .../tests/integration/targets/cnos_bgp/README.md | 119 ++ .../tests/integration/targets/cnos_bgp/aliases | 2 + .../targets/cnos_bgp/cnos_bgp_sample_hosts | 14 + .../integration/targets/cnos_bgp/tasks/main.yml | 83 ++ .../integration/targets/cnos_bgp/vars/main.yml | 37 + .../integration/targets/cnos_command/README.md | 115 ++ .../tests/integration/targets/cnos_command/aliases | 2 + .../targets/cnos_command/cnos_command_sample_hosts | 14 + .../targets/cnos_command/defaults/main.yaml | 3 + .../targets/cnos_command/tasks/cli.yaml | 15 + .../targets/cnos_command/tasks/main.yaml | 7 + .../cnos_command/tests/cli/bad_operator.yaml | 19 + .../targets/cnos_command/tests/cli/contains.yaml | 19 + .../targets/cnos_command/tests/cli/invalid.yaml | 27 + .../targets/cnos_command/tests/cli/output.yaml | 27 + .../targets/cnos_command/tests/cli/timeout.yaml | 18 + .../targets/cnos_conditional_command/README.md | 120 ++ .../targets/cnos_conditional_command/aliases | 2 + .../cnos_conditional_command_sample_hosts | 14 + .../cnos_conditional_command/tasks/main.yml | 12 + .../targets/cnos_conditional_command/vars/main.yml | 3 + .../targets/cnos_conditional_template/README.md | 120 ++ .../targets/cnos_conditional_template/aliases | 2 + .../cnos_conditional_template_sample_hosts | 14 + .../cnos_conditional_template/tasks/main.yml | 16 + .../templates/demo_template.j2 | 13 + .../cnos_conditional_template/vars/main.yml | 3 + .../integration/targets/cnos_config/README.md | 110 ++ .../tests/integration/targets/cnos_config/aliases | 2 + .../targets/cnos_config/cnos_config_sample_hosts | 14 + .../targets/cnos_config/defaults/main.yaml | 3 + .../integration/targets/cnos_config/tasks/cli.yaml | 15 + .../targets/cnos_config/tasks/main.yaml | 7 + .../targets/cnos_config/templates/basic/config.j2 | 4 + .../targets/cnos_config/templates/basic/config1.j2 | 4 + .../cnos_config/templates/defaults/config.j2 | 2 + .../targets/cnos_config/tests/cli/backup.yaml | 49 + .../targets/cnos_config/tests/cli/basic.yaml | 35 + .../targets/cnos_config/tests/cli/defaults.yaml | 36 + .../tests/integration/targets/cnos_facts/README.md | 112 ++ .../tests/integration/targets/cnos_facts/aliases | 2 + .../targets/cnos_facts/cnos_facts_sample_hosts | 14 + .../targets/cnos_facts/defaults/main.yaml | 3 + .../integration/targets/cnos_facts/tasks/cli.yaml | 15 + .../integration/targets/cnos_facts/tasks/main.yml | 7 + .../targets/cnos_facts/tests/cli/all_facts.yaml | 27 + .../cnos_facts/tests/cli/default_facts.yaml | 25 + .../cnos_facts/tests/cli/invalid_subset.yaml | 39 + .../targets/cnos_facts/tests/cli/not_hardware.yaml | 28 + .../tests/integration/targets/cnos_image/README.md | 119 ++ .../tests/integration/targets/cnos_image/aliases | 2 + .../targets/cnos_image/cnos_image_sample_hosts | 17 + .../integration/targets/cnos_image/tasks/main.yml | 21 + .../integration/targets/cnos_image/vars/main.yml | 6 + .../integration/targets/cnos_interface/aliases | 2 + .../cnos_interface/cnos_interface_sample_hosts | 14 + .../targets/cnos_interface/defaults/main.yaml | 2 + .../targets/cnos_interface/tasks/cli.yaml | 22 + .../targets/cnos_interface/tasks/main.yaml | 7 + .../targets/cnos_interface/tests/cli/basic.yaml | 228 ++++ .../targets/cnos_interface/tests/cli/intent.yaml | 140 ++ .../targets/cnos_interface/vars/main.yaml | 9 + .../integration/targets/cnos_l2_interface/aliases | 2 + .../cnos_l2_interface_sample_hosts | 14 + .../targets/cnos_l2_interface/defaults/main.yaml | 2 + .../targets/cnos_l2_interface/tasks/cli.yaml | 24 + .../targets/cnos_l2_interface/tasks/main.yaml | 10 + .../targets/cnos_l2_interface/tests/cli/agg.yaml | 81 ++ .../cnos_l2_interface/tests/cli/sanity.yaml | 168 +++ .../targets/cnos_l2_interface/vars/main.yaml | 9 + .../integration/targets/cnos_l3_interface/aliases | 2 + .../cnos_l3_interface_sample_hosts | 14 + .../targets/cnos_l3_interface/defaults/main.yaml | 2 + .../targets/cnos_l3_interface/tasks/cli.yaml | 22 + .../targets/cnos_l3_interface/tasks/main.yaml | 7 + .../targets/cnos_l3_interface/tests/cli/basic.yaml | 279 ++++ .../targets/cnos_l3_interface/vars/main.yaml | 9 + .../tests/integration/targets/cnos_linkagg/aliases | 2 + .../targets/cnos_linkagg/cnos_linkagg_sample_hosts | 14 + .../targets/cnos_linkagg/defaults/main.yaml | 3 + .../targets/cnos_linkagg/tasks/cli.yaml | 22 + .../targets/cnos_linkagg/tasks/main.yaml | 7 + .../targets/cnos_linkagg/tests/cli/basic.yaml | 169 +++ .../targets/cnos_linkagg/vars/main.yaml | 9 + .../tests/integration/targets/cnos_lldp/aliases | 2 + .../targets/cnos_lldp/cnos_lldp_sample_hosts | 14 + .../targets/cnos_lldp/defaults/main.yaml | 2 + .../integration/targets/cnos_lldp/tasks/cli.yaml | 22 + .../integration/targets/cnos_lldp/tasks/main.yaml | 7 + .../targets/cnos_lldp/tests/cli/basic.yaml | 44 + .../tests/integration/targets/cnos_logging/aliases | 2 + .../targets/cnos_logging/cnos_logging_sample_hosts | 14 + .../targets/cnos_logging/defaults/main.yaml | 2 + .../targets/cnos_logging/tasks/cli.yaml | 22 + .../targets/cnos_logging/tasks/main.yaml | 7 + .../targets/cnos_logging/tests/cli/basic.yaml | 136 ++ .../integration/targets/cnos_rollback/README.md | 119 ++ .../integration/targets/cnos_rollback/aliases | 2 + .../cnos_rollback/cnos_rollback_sample_hosts | 17 + .../targets/cnos_rollback/tasks/main.yml | 30 + .../targets/cnos_rollback/vars/main.yml | 12 + .../tests/integration/targets/cnos_save/README.md | 96 ++ .../tests/integration/targets/cnos_save/aliases | 2 + .../targets/cnos_save/cnos_save_sample_hosts | 14 + .../integration/targets/cnos_save/tasks/main.yml | 23 + .../integration/targets/cnos_save/vars/main.yml | 9 + .../integration/targets/cnos_showrun/README.md | 96 ++ .../tests/integration/targets/cnos_showrun/aliases | 2 + .../targets/cnos_showrun/cnos_showrun_sample_hosts | 14 + .../targets/cnos_showrun/tasks/main.yml | 11 + .../integration/targets/cnos_showrun/vars/main.yml | 3 + .../integration/targets/cnos_static_route/aliases | 2 + .../cnos_static_route_sample_hosts | 14 + .../targets/cnos_static_route/defaults/main.yaml | 2 + .../targets/cnos_static_route/tasks/cli.yaml | 22 + .../targets/cnos_static_route/tasks/main.yaml | 7 + .../targets/cnos_static_route/tests/cli/basic.yaml | 136 ++ .../tests/integration/targets/cnos_system/aliases | 2 + .../targets/cnos_system/cnos_system_sample_hosts | 14 + .../targets/cnos_system/defaults/main.yaml | 2 + .../integration/targets/cnos_system/tasks/cli.yaml | 33 + .../targets/cnos_system/tasks/main.yaml | 7 + .../targets/cnos_system/tests/cli/net_system.yaml | 34 + .../cnos_system/tests/cli/set_domain_list.yaml | 111 ++ .../cnos_system/tests/cli/set_domain_name.yaml | 32 + .../cnos_system/tests/cli/set_name_servers.yaml | 73 + .../targets/cnos_system/tests/common/sanity.yaml | 122 ++ .../cnos_system/tests/common/set_hostname.yaml | 36 + .../integration/targets/cnos_template/README.md | 112 ++ .../integration/targets/cnos_template/aliases | 2 + .../cnos_template/cnos_template_sample_hosts | 14 + .../targets/cnos_template/tasks/main.yml | 18 + .../cnos_template/templates/demo_template.j2 | 13 + .../targets/cnos_template/vars/main.yml | 3 + .../tests/integration/targets/cnos_user/aliases | 2 + .../targets/cnos_user/cnos_user_sample_hosts | 14 + .../targets/cnos_user/defaults/main.yaml | 2 + .../integration/targets/cnos_user/tasks/cli.yaml | 27 + .../integration/targets/cnos_user/tasks/main.yaml | 7 + .../targets/cnos_user/tests/common/basic.yaml | 58 + .../targets/cnos_user/tests/common/sanity.yaml | 84 ++ .../tests/integration/targets/cnos_vlag/README.md | 115 ++ .../tests/integration/targets/cnos_vlag/aliases | 2 + .../targets/cnos_vlag/cnos_vlag_sample_hosts | 14 + .../integration/targets/cnos_vlag/tasks/main.yml | 56 + .../integration/targets/cnos_vlag/vars/main.yml | 33 + .../tests/integration/targets/cnos_vlan/aliases | 2 + .../targets/cnos_vlan/cnos_vlan_sample_hosts | 14 + .../targets/cnos_vlan/defaults/main.yaml | 3 + .../integration/targets/cnos_vlan/tasks/cli.yaml | 22 + .../integration/targets/cnos_vlan/tasks/main.yaml | 7 + .../targets/cnos_vlan/tests/cli/basic.yaml | 213 +++ .../integration/targets/cnos_vlan/vars/main.yaml | 9 + .../tests/integration/targets/cnos_vrf/aliases | 2 + .../targets/cnos_vrf/cnos_vrf_sample_hosts | 14 + .../targets/cnos_vrf/defaults/main.yaml | 3 + .../integration/targets/cnos_vrf/tasks/cli.yaml | 16 + .../integration/targets/cnos_vrf/tasks/main.yaml | 7 + .../targets/cnos_vrf/tests/cli/basic.yaml | 259 ++++ .../integration/targets/enos_command/README.md | 115 ++ .../tests/integration/targets/enos_command/aliases | 2 + .../targets/enos_command/defaults/main.yaml | 3 + .../targets/enos_command/tasks/cli.yaml | 15 + .../targets/enos_command/tasks/main.yaml | 7 + .../enos_command/tests/cli/bad_operator.yaml | 20 + .../targets/enos_command/tests/cli/contains.yaml | 20 + .../targets/enos_command/tests/cli/invalid.yaml | 29 + .../targets/enos_command/tests/cli/output.yaml | 29 + .../targets/enos_command/tests/cli/timeout.yaml | 19 + .../targets/enos_command/vars/main.yaml | 13 + .../integration/targets/enos_config/README.md | 123 ++ .../tests/integration/targets/enos_config/aliases | 2 + .../targets/enos_config/defaults/main.yaml | 3 + .../integration/targets/enos_config/tasks/cli.yaml | 15 + .../targets/enos_config/tasks/main.yaml | 7 + .../targets/enos_config/templates/basic/config.j2 | 4 + .../enos_config/templates/defaults/config.j2 | 2 + .../targets/enos_config/tests/cli/backup.yaml | 52 + .../targets/enos_config/tests/cli/basic.yaml | 39 + .../targets/enos_config/tests/cli/defaults.yaml | 40 + .../targets/enos_config/tests/cli/force.yaml | 41 + .../integration/targets/enos_config/vars/main.yml | 9 + .../tests/integration/targets/enos_facts/README.md | 111 ++ .../tests/integration/targets/enos_facts/aliases | 2 + .../targets/enos_facts/defaults/main.yaml | 3 + .../integration/targets/enos_facts/tasks/cli.yaml | 15 + .../integration/targets/enos_facts/tasks/main.yml | 7 + .../targets/enos_facts/tests/cli/all_facts.yaml | 27 + .../enos_facts/tests/cli/default_facts.yaml | 29 + .../enos_facts/tests/cli/invalid_subset.yaml | 43 + .../targets/enos_facts/tests/cli/not_hardware.yaml | 28 + .../integration/targets/enos_facts/vars/main.yml | 9 + .../tests/integration/targets/exos_command/aliases | 1 + .../targets/exos_command/defaults/main.yaml | 3 + .../targets/exos_command/tasks/cli.yaml | 16 + .../targets/exos_command/tasks/httpapi.yaml | 16 + .../targets/exos_command/tasks/main.yaml | 8 + .../exos_command/tests/common/multiple.yaml | 16 + .../targets/exos_command/tests/common/prompt.yaml | 17 + .../targets/exos_command/tests/common/single.yaml | 14 + .../targets/exos_command/tests/common/waitfor.yaml | 15 + .../tests/common/waitfor_multiple.yaml | 20 + .../tests/integration/targets/exos_config/aliases | 1 + .../targets/exos_config/defaults/main.yaml | 3 + .../integration/targets/exos_config/tasks/cli.yaml | 16 + .../targets/exos_config/tasks/httpapi.yaml | 16 + .../targets/exos_config/tasks/main.yaml | 8 + .../targets/exos_config/templates/master.cfg | 242 ++++ .../targets/exos_config/tests/common/backup.yaml | 35 + .../tests/common/diff_against_file.yaml | 32 + .../tests/common/diff_against_startup.yaml | 42 + .../exos_config/tests/common/save_config.yaml | 51 + .../targets/exos_config/tests/common/sysname.yaml | 35 + .../tests/integration/targets/exos_facts/aliases | 1 + .../targets/exos_facts/defaults/main.yaml | 3 + .../integration/targets/exos_facts/tasks/cli.yaml | 16 + .../targets/exos_facts/tasks/httpapi.yaml | 16 + .../integration/targets/exos_facts/tasks/main.yaml | 8 + .../targets/exos_facts/tests/common/basic.yaml | 27 + .../exos_facts/tests/common/default_facts.yaml | 28 + .../exos_facts/tests/common/invalid_subset.yaml | 40 + .../tests/common/not_hardware_facts.yaml | 27 + .../integration/targets/exos_l2_interfaces/aliases | 1 + .../targets/exos_l2_interfaces/defaults/main.yaml | 3 + .../targets/exos_l2_interfaces/tasks/httpapi.yaml | 16 + .../targets/exos_l2_interfaces/tasks/main.yaml | 7 + .../tests/httpapi/_populate_config.yaml | 12 + .../tests/httpapi/_reset_config.yaml | 7 + .../exos_l2_interfaces/tests/httpapi/deleted.yaml | 96 ++ .../exos_l2_interfaces/tests/httpapi/merged.yaml | 85 ++ .../tests/httpapi/overridden.yaml | 76 ++ .../exos_l2_interfaces/tests/httpapi/replaced.yaml | 63 + .../targets/exos_l2_interfaces/vars/main.yaml | 44 + .../integration/targets/exos_lldp_global/aliases | 1 + .../targets/exos_lldp_global/defaults/main.yaml | 3 + .../targets/exos_lldp_global/meta/main.yaml | 1 + .../targets/exos_lldp_global/tasks/httpapi.yaml | 16 + .../targets/exos_lldp_global/tasks/main.yaml | 7 + .../tests/httpapi/_populate_config.yaml | 7 + .../tests/httpapi/_reset_config.yaml | 7 + .../exos_lldp_global/tests/httpapi/deleted.yaml | 48 + .../exos_lldp_global/tests/httpapi/merged.yaml | 49 + .../exos_lldp_global/tests/httpapi/replaced.yaml | 53 + .../targets/exos_lldp_global/vars/main.yaml | 85 ++ .../targets/exos_lldp_interfaces/aliases | 1 + .../exos_lldp_interfaces/defaults/main.yaml | 3 + .../exos_lldp_interfaces/tasks/httpapi.yaml | 16 + .../targets/exos_lldp_interfaces/tasks/main.yaml | 7 + .../tests/httpapi/_populate_config.yaml | 5 + .../tests/httpapi/_reset_config.yaml | 5 + .../tests/httpapi/deleted.yaml | 91 ++ .../exos_lldp_interfaces/tests/httpapi/merged.yaml | 57 + .../tests/httpapi/overridden.yaml | 56 + .../tests/httpapi/replaced.yaml | 57 + .../targets/exos_lldp_interfaces/vars/main.yaml | 49 + .../tests/integration/targets/exos_vlans/aliases | 1 + .../targets/exos_vlans/defaults/main.yaml | 3 + .../targets/exos_vlans/tasks/httpapi.yaml | 16 + .../integration/targets/exos_vlans/tasks/main.yaml | 7 + .../exos_vlans/tests/httpapi/_populate_config.yaml | 7 + .../exos_vlans/tests/httpapi/_reset_config.yaml | 6 + .../targets/exos_vlans/tests/httpapi/deleted.yaml | 44 + .../targets/exos_vlans/tests/httpapi/merged.yaml | 49 + .../exos_vlans/tests/httpapi/overridden.yaml | 46 + .../targets/exos_vlans/tests/httpapi/replaced.yaml | 49 + .../integration/targets/exos_vlans/vars/main.yaml | 88 ++ .../tests/integration/targets/nuage_vspk/aliases | 3 + .../targets/nuage_vspk/defaults/main.yaml | 8 + .../integration/targets/nuage_vspk/meta/main.yaml | 2 + .../integration/targets/nuage_vspk/tasks/main.yml | 24 + .../targets/nuage_vspk/tests/basic.yaml | 226 ++++ .../targets/prepare_nuage_tests/tasks/main.yml | 24 + .../community/network/tests/requirements.yml | 4 + .../network/tests/sanity/extra/botmeta.json | 8 + .../network/tests/sanity/extra/botmeta.py | 219 +++ .../network/tests/sanity/extra/extra-docs.json | 10 + .../network/tests/sanity/extra/extra-docs.py | 23 + .../tests/sanity/extra/no-unwanted-files.json | 7 + .../tests/sanity/extra/no-unwanted-files.py | 57 + .../community/network/tests/sanity/ignore-2.11.txt | 802 +++++++++++ .../community/network/tests/sanity/ignore-2.12.txt | 819 +++++++++++ .../community/network/tests/sanity/ignore-2.13.txt | 819 +++++++++++ .../community/network/tests/sanity/ignore-2.14.txt | 819 +++++++++++ .../community/network/tests/sanity/ignore-2.15.txt | 819 +++++++++++ .../community/network/tests/unit/__init__.py | 0 .../network/tests/unit/compat/__init__.py | 0 .../network/tests/unit/compat/builtins.py | 33 + .../community/network/tests/unit/compat/mock.py | 122 ++ .../network/tests/unit/compat/unittest.py | 38 + .../community/network/tests/unit/mock/__init__.py | 0 .../community/network/tests/unit/mock/loader.py | 116 ++ .../community/network/tests/unit/mock/path.py | 8 + .../community/network/tests/unit/mock/procenv.py | 90 ++ .../network/tests/unit/mock/vault_helper.py | 39 + .../network/tests/unit/mock/yaml_helper.py | 124 ++ .../network/tests/unit/plugins/__init__.py | 0 .../network/tests/unit/plugins/cliconf/__init__.py | 0 .../unit/plugins/cliconf/fixtures/__init__.py | 0 .../unit/plugins/cliconf/fixtures/ios/show_version | 54 + .../unit/plugins/cliconf/fixtures/nos/show_chassis | 30 + .../cliconf/fixtures/nos/show_running-config | 549 ++++++++ .../unit/plugins/cliconf/fixtures/nos/show_version | 17 + .../plugins/cliconf/fixtures/slxos/show_chassis | 40 + .../cliconf/fixtures/slxos/show_running-config | 624 +++++++++ .../cliconf/fixtures/slxos/show_startup-config | 624 +++++++++ .../plugins/cliconf/fixtures/slxos/show_version | 18 + .../cliconf/fixtures/weos4/show_running-config | 98 ++ .../cliconf/fixtures/weos4/show_system-information | 50 + .../network/tests/unit/plugins/cliconf/test_nos.py | 137 ++ .../tests/unit/plugins/cliconf/test_slxos.py | 144 ++ .../tests/unit/plugins/cliconf/test_weos4.py | 167 +++ .../network/tests/unit/plugins/httpapi/__init__.py | 0 .../network/tests/unit/plugins/httpapi/test_ftd.py | 416 ++++++ .../network/tests/unit/plugins/lookup/__init__.py | 0 .../tests/unit/plugins/lookup/fixtures/avi.json | 104 ++ .../network/tests/unit/plugins/lookup/test_avi.py | 92 ++ .../unit/plugins/module_utils/network/__init__.py | 0 .../plugins/module_utils/network/avi/__init__.py | 0 .../module_utils/network/avi/test_avi_api_utils.py | 703 ++++++++++ .../module_utils/network/common/__init__.py | 0 .../module_utils/network/common/test_parsing.py | 46 + .../module_utils/network/common/test_utils.py | 213 +++ .../plugins/module_utils/network/ftd/__init__.py | 0 .../module_utils/network/ftd/test_common.py | 449 ++++++ .../module_utils/network/ftd/test_configuration.py | 591 ++++++++ .../network/ftd/test_data/ngfw_with_ex.json | 1 + .../network/ftd/test_device.py.disabled | 148 ++ .../network/ftd/test_fdm_swagger_parser.py | 382 ++++++ .../network/ftd/test_fdm_swagger_validator.py | 1124 +++++++++++++++ .../network/ftd/test_fdm_swagger_with_real_data.py | 78 ++ .../network/ftd/test_upsert_functionality.py | 887 ++++++++++++ .../module_utils/network/netscaler/__init__.py | 0 .../network/netscaler/test_netscaler.py | 179 +++ .../plugins/module_utils/network/nos/__init__.py | 0 .../plugins/module_utils/network/nos/test_nos.py | 148 ++ .../plugins/module_utils/network/slxos/__init__.py | 0 .../module_utils/network/slxos/test_slxos.py | 148 ++ .../network/tests/unit/plugins/modules/__init__.py | 0 .../aireos_fixtures/aireos_config_config.cfg | 9 + .../modules/aireos_fixtures/aireos_config_src.cfg | 9 + .../plugins/modules/aireos_fixtures/show_sysinfo | 43 + .../tests/unit/plugins/modules/aireos_module.py | 87 ++ .../plugins/modules/apconos_fixtures/enable_ssh | 0 .../plugins/modules/apconos_fixtures/show_version | 2 + .../tests/unit/plugins/modules/apconos_module.py | 88 ++ .../modules/aruba_fixtures/aruba_config_config.cfg | 17 + .../aruba_fixtures/aruba_config_defaults.cfg | 13 + .../modules/aruba_fixtures/aruba_config_src.cfg | 11 + .../plugins/modules/aruba_fixtures/show_version | 17 + .../tests/unit/plugins/modules/aruba_module.py | 88 ++ .../plugins/modules/avi_fixtures/avi_user.json | 215 +++ .../ce_fixtures/ce_is_is_instance/after.txt | 11 + .../ce_fixtures/ce_is_is_instance/before.txt | 11 + .../ce_is_is_interface/after_interface.txt | 26 + .../ce_is_is_interface/before_interface.txt | 26 + .../modules/ce_fixtures/ce_is_is_view/after.txt | 104 ++ .../modules/ce_fixtures/ce_is_is_view/before.txt | 10 + .../modules/ce_fixtures/ce_lacp/ce_lacp_00.txt | 26 + .../modules/ce_fixtures/ce_lacp/ce_lacp_01.txt | 26 + .../modules/ce_fixtures/ce_lacp/ce_lacp_10.txt | 10 + .../modules/ce_fixtures/ce_lacp/ce_lacp_11.txt | 10 + .../ce_fixtures/ce_lldp/ce_lldpSysParameter_00.txt | 21 + .../ce_fixtures/ce_lldp/ce_lldpSysParameter_01.txt | 21 + .../ce_fixtures/ce_lldp/ce_lldp_global_00.txt | 11 + .../ce_fixtures/ce_lldp/ce_lldp_global_01.txt | 11 + .../modules/ce_fixtures/ce_lldp/result_ok.txt | 3 + .../ce_lldp_interface/lldp_interface_changed.txt | 29 + .../ce_lldp_interface/lldp_interface_existing.txt | 29 + .../ce_fixtures/ce_lldp_interface/result_ok.txt | 3 + .../modules/ce_fixtures/ce_mdn_interface/after.txt | 14 + .../ce_fixtures/ce_mdn_interface/before.txt | 14 + .../ce_fixtures/ce_multicast_global/after.txt | 10 + .../ce_fixtures/ce_multicast_global/before.txt | 1 + .../ce_fixtures/ce_multicast_igmp_enable/after.txt | 22 + .../ce_multicast_igmp_enable/before.txt | 1 + .../ce_fixtures/ce_static_route_bfd/result_ok.txt | 3 + .../ce_static_route_bfd/srBfdPara_1.txt | 18 + .../ce_static_route_bfd/srBfdPara_2.txt | 18 + .../ce_static_route_bfd/staticrtbase_1.txt | 18 + .../ce_static_route_bfd/staticrtbase_2.txt | 18 + .../tests/unit/plugins/modules/ce_module.py | 90 ++ .../cnos_fixtures/cnos_banner_show_banner.txt | 3 + .../modules/cnos_fixtures/cnos_bgp_config.cfg | 24 + .../modules/cnos_fixtures/cnos_config_src.cfg | 6 + .../modules/cnos_fixtures/cnos_linkagg_config.cfg | 36 + .../modules/cnos_fixtures/cnos_logging_config.cfg | 9 + .../modules/cnos_fixtures/cnos_static_route.cfg | 3 + .../modules/cnos_fixtures/cnos_system_config.cfg | 11 + .../modules/cnos_fixtures/cnos_user_config.cfg | 8 + .../modules/cnos_fixtures/cnos_vlag_config.cfg | 63 + .../modules/cnos_fixtures/cnos_vlan_config.cfg | 77 ++ .../modules/cnos_fixtures/cnos_vrf_config.cfg | 176 +++ .../modules/cnos_fixtures/l3_interface_config.cfg | 27 + .../modules/cnos_fixtures/show_interface_brief | 92 ++ .../show_interface_ethernet_1_33_switchport | 13 + .../show_interface_ethernet_1_44_switchport | 0 .../show_interface_ethernet_1_45_switchport | 14 + .../cnos_fixtures/show_interface_mac-address | 72 + .../modules/cnos_fixtures/show_interface_status | 74 + .../cnos_fixtures/show_ip_interface_brief_vrf_all | 10 + .../show_ipv6_interface_brief_vrf_all | 5 + .../modules/cnos_fixtures/show_lldp_neighbors | 8 + .../modules/cnos_fixtures/show_process_memory | 38 + .../unit/plugins/modules/cnos_fixtures/show_run | 331 +++++ .../cnos_fixtures/show_run_interface_ethernet_1_33 | 13 + .../cnos_fixtures/show_run_interface_ethernet_1_45 | 14 + .../modules/cnos_fixtures/show_running-config | 331 +++++ .../plugins/modules/cnos_fixtures/show_sys-info | 62 + .../plugins/modules/cnos_fixtures/show_version | 19 + .../unit/plugins/modules/cnos_fixtures/show_vlan | 97 ++ .../tests/unit/plugins/modules/cnos_module.py | 126 ++ .../network/tests/unit/plugins/modules/ct.vm | 32 + .../modules/eccli_fixtures/configure_terminal | 2 + .../plugins/modules/eccli_fixtures/show_version | 12 + .../tests/unit/plugins/modules/eccli_module.py | 88 ++ .../edgeos_fixtures/edgeos_config_config.cfg | 10 + .../modules/edgeos_fixtures/edgeos_config_src.cfg | 5 + .../edgeos_fixtures/edgeos_config_src_brackets.cfg | 13 + .../plugins/modules/edgeos_fixtures/show_host_name | 1 + .../plugins/modules/edgeos_fixtures/show_version | 7 + .../tests/unit/plugins/modules/edgeos_module.py | 86 ++ .../edgeswitch_facts_show_interfaces_description | 26 + .../edgeswitch_facts_show_interfaces_status_all | 31 + .../edgeswitch_facts_show_sysinfo | 7 + .../edgeswitch_facts_show_version | 8 + .../edgeswitch_vlan_show_interfaces_switchport | 239 ++++ .../edgeswitch_vlan_show_vlan_brief | 4 + .../unit/plugins/modules/edgeswitch_module.py | 86 ++ .../modules/enos_fixtures/enos_config_config.cfg | 47 + .../modules/enos_fixtures/enos_config_src.cfg | 6 + .../modules/enos_fixtures/show_interface_ip | 9 + .../modules/enos_fixtures/show_interface_status | 59 + .../plugins/modules/enos_fixtures/show_lldp_port | 60 + .../enos_fixtures/show_lldp_remote-device_port | 12 + .../unit/plugins/modules/enos_fixtures/show_run | 59 + .../modules/enos_fixtures/show_running-config | 59 + .../modules/enos_fixtures/show_system_memory | 166 +++ .../plugins/modules/enos_fixtures/show_version | 60 + .../tests/unit/plugins/modules/enos_module.py | 119 ++ .../modules/exos_fixtures/exos_config_config.cfg | 31 + .../modules/exos_fixtures/exos_config_modified.cfg | 31 + .../modules/exos_fixtures/exos_config_src.cfg | 2 + .../modules/exos_fixtures/show_lldp_neighbors | 1 + .../unit/plugins/modules/exos_fixtures/show_memory | 95 ++ .../plugins/modules/exos_fixtures/show_port_config | 1 + .../modules/exos_fixtures/show_port_description | 2 + .../unit/plugins/modules/exos_fixtures/show_switch | 33 + .../plugins/modules/exos_fixtures/show_version | 6 + .../unit/plugins/modules/exos_fixtures/show_vlan | 2 + .../plugins/modules/exos_fixtures/show_vlan_detail | 1 + .../tests/unit/plugins/modules/exos_module.py | 87 ++ .../modules/icx_fixtures/configure_terminal | 0 .../icx_fixtures/icx_banner_show_banner.txt | 16 + .../modules/icx_fixtures/icx_config_config.cfg | 11 + .../modules/icx_fixtures/icx_config_src.cfg | 10 + .../unit/plugins/modules/icx_fixtures/icx_copy.txt | 2 + .../modules/icx_fixtures/icx_interface_config.cfg | 91 ++ .../plugins/modules/icx_fixtures/icx_lldp_None | 0 .../plugins/modules/icx_fixtures/icx_lldp_absent | 9 + .../plugins/modules/icx_fixtures/icx_lldp_present | 1 + .../modules/icx_fixtures/icx_logging_config.cfg | 17 + .../icx_ping_ping_10.255.255.250_count_2 | 4 + ...icx_ping_ping_10.255.255.250_count_2_timeout_45 | 4 + .../icx_fixtures/icx_ping_ping_8.8.8.8_count_2 | 5 + .../icx_ping_ping_8.8.8.8_count_5_ttl_70 | 8 + .../icx_fixtures/icx_ping_ping_8.8.8.8_size_10001 | 1 + .../icx_fixtures/icx_ping_ping_8.8.8.8_ttl_300 | 1 + .../icx_fixtures/icx_static_route_config.txt | 8 + .../plugins/modules/icx_fixtures/icx_system.txt | 7 + .../plugins/modules/icx_fixtures/icx_vlan_config | 32 + .../modules/icx_fixtures/lag_running_config.txt | 7 + .../unit/plugins/modules/icx_fixtures/show_flash | 6 + .../plugins/modules/icx_fixtures/show_interfaces | 85 ++ .../unit/plugins/modules/icx_fixtures/show_lldp | 9 + .../icx_fixtures/show_lldp_neighbors_detail | 0 .../unit/plugins/modules/icx_fixtures/show_media | 2 + .../unit/plugins/modules/icx_fixtures/show_memory | 3 + .../modules/icx_fixtures/show_running-config | 76 ++ .../show_running-config_begin_interface | 77 ++ .../show_running-config_include_hostname | 1 + .../show_running-config_include_username.txt | 8 + .../unit/plugins/modules/icx_fixtures/show_version | 26 + .../tests/unit/plugins/modules/icx_fixtures/skip | 1 + .../tests/unit/plugins/modules/icx_module.py | 93 ++ .../ingate_fixtures/test_ig_config_add.json | 10 + .../ingate_fixtures/test_ig_config_delete.json | 18 + .../ingate_fixtures/test_ig_config_download.json | 9 + .../ingate_fixtures/test_ig_config_factory.json | 7 + .../ingate_fixtures/test_ig_config_get.json | 20 + .../ingate_fixtures/test_ig_config_modify.json | 10 + .../test_ig_config_return_rowid.json | 1 + .../ingate_fixtures/test_ig_config_revert.json | 7 + .../ingate_fixtures/test_ig_config_store.json | 7 + .../ingate_fixtures/test_ig_unit_information.json | 21 + .../tests/unit/plugins/modules/ingate_module.py | 84 ++ .../unit/plugins/modules/ironware_fixtures/dir | 1 + .../ironware_fixtures/ironware_config_config.cfg | 12 + .../ironware_fixtures/ironware_config_defaults.cfg | 13 + .../ironware_fixtures/ironware_config_src.cfg | 10 + .../plugins/modules/ironware_fixtures/show_chassis | 45 + .../modules/ironware_fixtures/show_interfaces | 1053 +++++++++++++++ .../modules/ironware_fixtures/show_ipv6_interface | 5 + .../modules/ironware_fixtures/show_lldp_neighbors | 3 + .../plugins/modules/ironware_fixtures/show_memory | 30 + .../modules/ironware_fixtures/show_mpls_lsp_detail | 32 + .../ironware_fixtures/show_mpls_vll-local_detail | 7 + .../modules/ironware_fixtures/show_mpls_vll_detail | 19 + .../ironware_fixtures/show_mpls_vpls_detail | 21 + .../modules/ironware_fixtures/show_running-config | 291 ++++ .../plugins/modules/ironware_fixtures/show_version | 92 ++ .../tests/unit/plugins/modules/ironware_module.py | 88 ++ .../tests/unit/plugins/modules/netscaler_module.py | 47 + .../modules/nos_fixtures/nos_config_config.cfg | 31 + .../modules/nos_fixtures/nos_config_src.cfg | 11 + .../nos_fixtures/nos_facts_show_inventory_chassis | 3 + .../nos_fixtures/nos_facts_show_running-config | 1 + .../modules/nos_fixtures/nos_facts_show_version | 17 + .../unit/plugins/modules/nos_fixtures/show_version | 17 + .../tests/unit/plugins/modules/nos_module.py | 87 ++ .../tests/unit/plugins/modules/nuage_module.py | 74 + .../tests/unit/plugins/modules/nvos_module.py | 108 ++ .../modules/opx_fixtures/opx_get_config.cfg | 10 + .../modules/opx_fixtures/opx_operation_create.cfg | 13 + .../modules/opx_fixtures/opx_operation_delete.cfg | 8 + .../modules/opx_fixtures/opx_operation_get.cfg | 16 + .../modules/opx_fixtures/opx_operation_get_db.cfg | 25 + .../modules/opx_fixtures/opx_operation_set.cfg | 11 + .../tests/unit/plugins/modules/opx_module.py | 91 ++ .../show_interface_ethernet_0_2_switchport | 6 + .../show_interface_ethernet_0_3_switchport | 0 .../show_interface_ethernet_0_4_switchport | 6 + .../plugins/modules/slxos_fixtures/show_version | 18 + .../plugins/modules/slxos_fixtures/show_vlan_brief | 17 + .../modules/slxos_fixtures/slxos_config_config.cfg | 31 + .../modules/slxos_fixtures/slxos_config_src.cfg | 11 + .../slxos_facts_show_inventory_chassis | 5 + .../slxos_fixtures/slxos_facts_show_running-config | 1 + .../slxos_fixtures/slxos_facts_show_version | 18 + .../tests/unit/plugins/modules/slxos_module.py | 87 ++ .../unit/plugins/modules/test_aireos_command.py | 122 ++ .../unit/plugins/modules/test_aireos_config.py | 131 ++ .../unit/plugins/modules/test_apconos_command.py | 110 ++ .../unit/plugins/modules/test_aruba_command.py | 109 ++ .../unit/plugins/modules/test_aruba_config.py | 189 +++ .../tests/unit/plugins/modules/test_avi_user.py | 104 ++ .../unit/plugins/modules/test_ce_is_is_instance.py | 71 + .../plugins/modules/test_ce_is_is_interface.py | 100 ++ .../unit/plugins/modules/test_ce_is_is_view.py | 248 ++++ .../tests/unit/plugins/modules/test_ce_lacp.py | 134 ++ .../tests/unit/plugins/modules/test_ce_lldp.py | 113 ++ .../unit/plugins/modules/test_ce_lldp_interface.py | 111 ++ .../unit/plugins/modules/test_ce_mdn_interface.py | 67 + .../plugins/modules/test_ce_multicast_global.py | 69 + .../modules/test_ce_multicast_igmp_enable.py | 80 ++ .../plugins/modules/test_ce_static_route_bfd.py | 102 ++ .../tests/unit/plugins/modules/test_cnos_banner.py | 62 + .../tests/unit/plugins/modules/test_cnos_bgp.py | 95 ++ .../unit/plugins/modules/test_cnos_command.py | 104 ++ .../tests/unit/plugins/modules/test_cnos_facts.py | 82 ++ .../unit/plugins/modules/test_cnos_l3_interface.py | 79 ++ .../unit/plugins/modules/test_cnos_linkagg.py | 144 ++ .../unit/plugins/modules/test_cnos_logging.py | 60 + .../unit/plugins/modules/test_cnos_static_route.py | 74 + .../tests/unit/plugins/modules/test_cnos_system.py | 103 ++ .../tests/unit/plugins/modules/test_cnos_user.py | 89 ++ .../tests/unit/plugins/modules/test_cnos_vlag.py | 51 + .../tests/unit/plugins/modules/test_cnos_vlan.py | 206 +++ .../tests/unit/plugins/modules/test_cnos_vrf.py | 78 ++ .../plugins/modules/test_cv_server_provision.py | 889 ++++++++++++ .../tests/unit/plugins/modules/test_dladm_vnic.py | 253 ++++ .../unit/plugins/modules/test_edgeos_command.py | 106 ++ .../unit/plugins/modules/test_edgeos_config.py | 105 ++ .../unit/plugins/modules/test_edgeos_facts.py | 86 ++ .../unit/plugins/modules/test_edgeswitch_facts.py | 71 + .../unit/plugins/modules/test_edgeswitch_vlan.py | 152 +++ .../unit/plugins/modules/test_enos_command.py | 104 ++ .../tests/unit/plugins/modules/test_enos_config.py | 125 ++ .../tests/unit/plugins/modules/test_enos_facts.py | 82 ++ .../plugins/modules/test_eric_eccli_command.py | 126 ++ .../unit/plugins/modules/test_exos_command.py | 120 ++ .../plugins/modules/test_exos_config.py.disabled | 265 ++++ .../tests/unit/plugins/modules/test_exos_facts.py | 124 ++ .../unit/plugins/modules/test_ftd_configuration.py | 125 ++ .../unit/plugins/modules/test_ftd_file_download.py | 99 ++ .../unit/plugins/modules/test_ftd_file_upload.py | 81 ++ .../tests/unit/plugins/modules/test_ftd_install.py | 249 ++++ .../plugins/modules/test_iap_start_workflow.py | 914 +++++++++++++ .../tests/unit/plugins/modules/test_iap_token.py | 51 + .../tests/unit/plugins/modules/test_icx_banner.py | 96 ++ .../tests/unit/plugins/modules/test_icx_command.py | 113 ++ .../plugins/modules/test_icx_config.py.disabled | 219 +++ .../tests/unit/plugins/modules/test_icx_copy.py | 203 +++ .../tests/unit/plugins/modules/test_icx_facts.py | 137 ++ .../unit/plugins/modules/test_icx_interface.py | 208 +++ .../unit/plugins/modules/test_icx_l3_interface.py | 121 ++ .../tests/unit/plugins/modules/test_icx_linkagg.py | 123 ++ .../tests/unit/plugins/modules/test_icx_lldp.py | 99 ++ .../tests/unit/plugins/modules/test_icx_logging.py | 149 ++ .../tests/unit/plugins/modules/test_icx_ping.py | 86 ++ .../unit/plugins/modules/test_icx_static_route.py | 122 ++ .../tests/unit/plugins/modules/test_icx_system.py | 164 +++ .../tests/unit/plugins/modules/test_icx_user.py | 197 +++ .../tests/unit/plugins/modules/test_icx_vlan.py | 279 ++++ .../tests/unit/plugins/modules/test_ig_config.py | 241 ++++ .../plugins/modules/test_ig_unit_information.py | 56 + .../unit/plugins/modules/test_ironware_command.py | 100 ++ .../unit/plugins/modules/test_ironware_config.py | 165 +++ .../unit/plugins/modules/test_ironware_facts.py | 102 ++ .../tests/unit/plugins/modules/test_nclu.py | 252 ++++ .../unit/plugins/modules/test_netact_cm_command.py | 172 +++ .../plugins/modules/test_netscaler_cs_action.py | 639 +++++++++ .../plugins/modules/test_netscaler_cs_policy.py | 332 +++++ .../plugins/modules/test_netscaler_cs_vserver.py | 768 +++++++++++ .../plugins/modules/test_netscaler_gslb_service.py | 738 ++++++++++ .../plugins/modules/test_netscaler_gslb_site.py | 671 +++++++++ .../plugins/modules/test_netscaler_gslb_vserver.py | 761 +++++++++++ .../plugins/modules/test_netscaler_lb_monitor.py | 521 +++++++ .../plugins/modules/test_netscaler_lb_vserver.py | 843 ++++++++++++ .../modules/test_netscaler_nitro_request.py | 347 +++++ .../plugins/modules/test_netscaler_save_config.py | 151 +++ .../unit/plugins/modules/test_netscaler_server.py | 699 ++++++++++ .../unit/plugins/modules/test_netscaler_service.py | 353 +++++ .../plugins/modules/test_netscaler_servicegroup.py | 540 ++++++++ .../plugins/modules/test_netscaler_ssl_certkey.py | 624 +++++++++ .../tests/unit/plugins/modules/test_nos_command.py | 121 ++ .../tests/unit/plugins/modules/test_nos_config.py | 167 +++ .../tests/unit/plugins/modules/test_nos_facts.py | 61 + .../tests/unit/plugins/modules/test_nuage_vspk.py | 1424 ++++++++++++++++++++ .../tests/unit/plugins/modules/test_opx_cps.py | 183 +++ .../unit/plugins/modules/test_pn_access_list_ip.py | 59 + .../unit/plugins/modules/test_pn_admin_service.py | 54 + .../modules/test_pn_admin_session_timeout.py | 54 + .../unit/plugins/modules/test_pn_admin_syslog.py | 74 + .../modules/test_pn_connection_stats_settings.py | 63 + .../unit/plugins/modules/test_pn_cpu_class.py | 68 + .../unit/plugins/modules/test_pn_cpu_mgmt_class.py | 47 + .../unit/plugins/modules/test_pn_dhcp_filter.py | 73 + .../tests/unit/plugins/modules/test_pn_dscp_map.py | 59 + .../plugins/modules/test_pn_dscp_map_pri_map.py | 60 + .../unit/plugins/modules/test_pn_fabric_local.py | 47 + .../unit/plugins/modules/test_pn_igmp_snooping.py | 55 + .../modules/test_pn_ipv6security_raguard.py | 73 + .../modules/test_pn_ipv6security_raguard_port.py | 60 + .../modules/test_pn_ipv6security_raguard_vlan.py | 60 + .../plugins/modules/test_pn_log_audit_exception.py | 62 + .../unit/plugins/modules/test_pn_port_config.py | 61 + .../unit/plugins/modules/test_pn_port_cos_bw.py | 47 + .../modules/test_pn_port_cos_rate_setting.py | 49 + .../unit/plugins/modules/test_pn_prefix_list.py | 60 + .../plugins/modules/test_pn_prefix_list_network.py | 60 + .../tests/unit/plugins/modules/test_pn_role.py | 74 + .../unit/plugins/modules/test_pn_snmp_community.py | 74 + .../unit/plugins/modules/test_pn_snmp_trap_sink.py | 61 + .../unit/plugins/modules/test_pn_snmp_vacm.py | 74 + .../tests/unit/plugins/modules/test_pn_stp.py | 49 + .../tests/unit/plugins/modules/test_pn_stp_port.py | 47 + .../unit/plugins/modules/test_pn_switch_setup.py | 63 + .../tests/unit/plugins/modules/test_pn_user.py | 74 + .../plugins/modules/test_pn_vflow_table_profile.py | 47 + .../unit/plugins/modules/test_pn_vrouter_bgp.py | 73 + .../plugins/modules/test_pn_vrouter_bgp_network.py | 61 + .../modules/test_pn_vrouter_interface_ip.py | 62 + .../modules/test_pn_vrouter_loopback_interface.py | 60 + .../unit/plugins/modules/test_pn_vrouter_ospf.py | 59 + .../unit/plugins/modules/test_pn_vrouter_ospf6.py | 60 + .../modules/test_pn_vrouter_packet_relay.py | 60 + .../plugins/modules/test_pn_vrouter_pim_config.py | 55 + .../tests/unit/plugins/modules/test_pn_vtep.py | 63 + .../unit/plugins/modules/test_slxos_command.py | 121 ++ .../unit/plugins/modules/test_slxos_config.py | 195 +++ .../tests/unit/plugins/modules/test_slxos_facts.py | 61 + .../unit/plugins/modules/test_slxos_interface.py | 153 +++ .../plugins/modules/test_slxos_l2_interface.py | 170 +++ .../plugins/modules/test_slxos_l3_interface.py | 101 ++ .../unit/plugins/modules/test_slxos_linkagg.py | 158 +++ .../tests/unit/plugins/modules/test_slxos_lldp.py | 95 ++ .../tests/unit/plugins/modules/test_slxos_vlan.py | 148 ++ .../unit/plugins/modules/test_vdirect_commit.py | 202 +++ .../unit/plugins/modules/test_vdirect_file.py | 244 ++++ .../unit/plugins/modules/test_vdirect_runnable.py | 438 ++++++ .../unit/plugins/modules/test_voss_command.py | 120 ++ .../plugins/modules/test_voss_config.py.disabled | 272 ++++ .../tests/unit/plugins/modules/test_voss_facts.py | 86 ++ .../network/tests/unit/plugins/modules/utils.py | 50 + .../plugins/modules/voss_fixtures/show_sys-info | 107 ++ .../modules/voss_fixtures/voss_config_config.cfg | 16 + .../modules/voss_fixtures/voss_config_ipv6.cfg | 6 + .../modules/voss_fixtures/voss_config_src.cfg | 10 + ...facts_show_interfaces_gigabitEthernet_interface | 93 ++ ...voss_facts_show_interfaces_gigabitEthernet_name | 93 ++ .../voss_fixtures/voss_facts_show_ip_interface | 12 + .../voss_facts_show_ipv6_address_interface | 12 + .../voss_facts_show_khi_performance_memory | 14 + .../voss_fixtures/voss_facts_show_lldp_neighbor | 12 + .../voss_fixtures/voss_facts_show_running-config | 903 +++++++++++++ .../modules/voss_fixtures/voss_facts_show_sys-info | 107 ++ .../tests/unit/plugins/modules/voss_module.py | 88 ++ .../network/tests/unit/plugins/modules/wt.zip | 0 .../tests/unit/plugins/terminal/__init__.py | 0 .../tests/unit/plugins/terminal/test_slxos.py | 53 + .../tests/unit/plugins/terminal/test_weos4.py | 37 + .../community/network/tests/unit/requirements.txt | 8 + .../community/network/tests/utils/constraints.txt | 50 + .../community/network/tests/utils/requirements.txt | 39 + .../network/tests/utils/shippable/cloud.sh | 19 + .../collection_versions_page_size-2.10.patch | 11 + .../collection_versions_page_size-2.11.patch | 37 + .../collection_versions_page_size-2.9.patch | 11 + .../collection_versions_page_size-devel.patch | 37 + .../network/tests/utils/shippable/freebsd.sh | 22 + .../network/tests/utils/shippable/linux.sh | 18 + .../network/tests/utils/shippable/macos.sh | 22 + .../community/network/tests/utils/shippable/osx.sh | 22 + .../network/tests/utils/shippable/remote.sh | 22 + .../network/tests/utils/shippable/rhel.sh | 22 + .../network/tests/utils/shippable/sanity.sh | 48 + .../network/tests/utils/shippable/shippable.sh | 216 +++ .../network/tests/utils/shippable/units.sh | 33 + 805 files changed, 60669 insertions(+) create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/meta/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/tasks/netconf.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/tests/netconf/ce_is_is_instance.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/meta/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/tasks/netconf.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/tests/netconf/ce_is_is_interface.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tasks/netconf.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/cleanup.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/setup.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_is_is_view_entity .yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_bfd.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_export.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_import.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_l1tol2.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_l2tol1.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_max_load.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_preferences.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_view_basic.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_issi_default.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_isis_filter_import.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_isis_next_hop.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lacp/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lacp/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lacp/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lacp/tasks/netconf.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lacp/tests/netconf/absent.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lacp/tests/netconf/delete.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lacp/tests/netconf/merge.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lacp/tests/netconf/present.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lldp/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lldp/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lldp/meta/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lldp/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lldp/tasks/netconf.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lldp/tests/netconf/absent.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lldp/tests/netconf/clean.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lldp/tests/netconf/present.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/meta/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/tasks/netconf.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/tests/netconf/lldp_interface.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/tasks/netconf.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/tests/netconf/ce_mdn_interface.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_multicast_global/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_multicast_global/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_multicast_global/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_multicast_global/tasks/netconf.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_multicast_global/tests/netconf/test_ce_multicast_global.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/tasks/netconf.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/tests/netconf/ce_multicast_igmp_enable.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/tasks/netconf.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/tests/netconf/ce_static_route_bfd.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/tests/netconf/cleanup.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_backup/README.md create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_backup/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_backup/cnos_backup_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_backup/tasks/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_backup/vars/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_banner/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_banner/cnos_banner_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_banner/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_banner/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_banner/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_banner/tests/cli/basic-login.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_banner/tests/cli/basic-motd.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_banner/tests/cli/basic-no-login.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_banner/vars/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_bgp/README.md create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_bgp/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_bgp/cnos_bgp_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_bgp/tasks/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_bgp/vars/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_command/README.md create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_command/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_command/cnos_command_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_command/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_command/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_command/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_command/tests/cli/bad_operator.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_command/tests/cli/contains.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_command/tests/cli/invalid.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_command/tests/cli/output.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_command/tests/cli/timeout.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_conditional_command/README.md create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_conditional_command/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_conditional_command/cnos_conditional_command_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_conditional_command/tasks/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_conditional_command/vars/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_conditional_template/README.md create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_conditional_template/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_conditional_template/cnos_conditional_template_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_conditional_template/tasks/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_conditional_template/templates/demo_template.j2 create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_conditional_template/vars/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_config/README.md create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_config/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_config/cnos_config_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_config/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_config/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_config/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_config/templates/basic/config.j2 create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_config/templates/basic/config1.j2 create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_config/templates/defaults/config.j2 create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_config/tests/cli/backup.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_config/tests/cli/basic.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_config/tests/cli/defaults.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_facts/README.md create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_facts/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_facts/cnos_facts_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_facts/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_facts/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_facts/tasks/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_facts/tests/cli/all_facts.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_facts/tests/cli/default_facts.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_facts/tests/cli/invalid_subset.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_facts/tests/cli/not_hardware.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_image/README.md create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_image/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_image/cnos_image_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_image/tasks/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_image/vars/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_interface/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_interface/cnos_interface_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_interface/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_interface/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_interface/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_interface/tests/cli/basic.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_interface/tests/cli/intent.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_interface/vars/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_l2_interface/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_l2_interface/cnos_l2_interface_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_l2_interface/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_l2_interface/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_l2_interface/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_l2_interface/tests/cli/agg.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_l2_interface/tests/cli/sanity.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_l2_interface/vars/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_l3_interface/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_l3_interface/cnos_l3_interface_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_l3_interface/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_l3_interface/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_l3_interface/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_l3_interface/tests/cli/basic.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_l3_interface/vars/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_linkagg/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_linkagg/cnos_linkagg_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_linkagg/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_linkagg/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_linkagg/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_linkagg/tests/cli/basic.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_linkagg/vars/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_lldp/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_lldp/cnos_lldp_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_lldp/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_lldp/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_lldp/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_lldp/tests/cli/basic.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_logging/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_logging/cnos_logging_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_logging/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_logging/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_logging/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_logging/tests/cli/basic.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_rollback/README.md create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_rollback/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_rollback/cnos_rollback_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_rollback/tasks/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_rollback/vars/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_save/README.md create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_save/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_save/cnos_save_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_save/tasks/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_save/vars/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_showrun/README.md create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_showrun/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_showrun/cnos_showrun_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_showrun/tasks/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_showrun/vars/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_static_route/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_static_route/cnos_static_route_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_static_route/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_static_route/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_static_route/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_static_route/tests/cli/basic.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_system/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_system/cnos_system_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_system/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_system/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_system/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_system/tests/cli/net_system.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_system/tests/cli/set_domain_list.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_system/tests/cli/set_domain_name.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_system/tests/cli/set_name_servers.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_system/tests/common/sanity.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_system/tests/common/set_hostname.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_template/README.md create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_template/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_template/cnos_template_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_template/tasks/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_template/templates/demo_template.j2 create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_template/vars/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_user/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_user/cnos_user_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_user/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_user/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_user/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_user/tests/common/basic.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_user/tests/common/sanity.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vlag/README.md create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vlag/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vlag/cnos_vlag_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vlag/tasks/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vlag/vars/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vlan/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vlan/cnos_vlan_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vlan/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vlan/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vlan/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vlan/tests/cli/basic.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vlan/vars/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vrf/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vrf/cnos_vrf_sample_hosts create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vrf/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vrf/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vrf/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/cnos_vrf/tests/cli/basic.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_command/README.md create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_command/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_command/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_command/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_command/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_command/tests/cli/bad_operator.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_command/tests/cli/contains.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_command/tests/cli/invalid.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_command/tests/cli/output.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_command/tests/cli/timeout.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_command/vars/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_config/README.md create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_config/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_config/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_config/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_config/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_config/templates/basic/config.j2 create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_config/templates/defaults/config.j2 create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_config/tests/cli/backup.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_config/tests/cli/basic.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_config/tests/cli/defaults.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_config/tests/cli/force.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_config/vars/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_facts/README.md create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_facts/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_facts/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_facts/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_facts/tasks/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_facts/tests/cli/all_facts.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_facts/tests/cli/default_facts.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_facts/tests/cli/invalid_subset.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_facts/tests/cli/not_hardware.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/enos_facts/vars/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_command/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_command/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_command/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_command/tasks/httpapi.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_command/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_command/tests/common/multiple.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_command/tests/common/prompt.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_command/tests/common/single.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_command/tests/common/waitfor.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_command/tests/common/waitfor_multiple.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_config/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_config/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_config/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_config/tasks/httpapi.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_config/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_config/templates/master.cfg create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_config/tests/common/backup.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_config/tests/common/diff_against_file.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_config/tests/common/diff_against_startup.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_config/tests/common/save_config.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_config/tests/common/sysname.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_facts/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_facts/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_facts/tasks/cli.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_facts/tasks/httpapi.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_facts/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_facts/tests/common/basic.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_facts/tests/common/default_facts.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_facts/tests/common/invalid_subset.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_facts/tests/common/not_hardware_facts.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_l2_interfaces/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_l2_interfaces/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_l2_interfaces/tasks/httpapi.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_l2_interfaces/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_l2_interfaces/tests/httpapi/_populate_config.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_l2_interfaces/tests/httpapi/_reset_config.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_l2_interfaces/tests/httpapi/deleted.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_l2_interfaces/tests/httpapi/merged.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_l2_interfaces/tests/httpapi/overridden.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_l2_interfaces/tests/httpapi/replaced.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_l2_interfaces/vars/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_global/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_global/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_global/meta/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_global/tasks/httpapi.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_global/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_global/tests/httpapi/_populate_config.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_global/tests/httpapi/_reset_config.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_global/tests/httpapi/deleted.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_global/tests/httpapi/merged.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_global/tests/httpapi/replaced.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_global/vars/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_interfaces/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_interfaces/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_interfaces/tasks/httpapi.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_interfaces/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_interfaces/tests/httpapi/_populate_config.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_interfaces/tests/httpapi/_reset_config.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_interfaces/tests/httpapi/deleted.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_interfaces/tests/httpapi/merged.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_interfaces/tests/httpapi/overridden.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_interfaces/tests/httpapi/replaced.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_lldp_interfaces/vars/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_vlans/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_vlans/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_vlans/tasks/httpapi.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_vlans/tasks/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_vlans/tests/httpapi/_populate_config.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_vlans/tests/httpapi/_reset_config.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_vlans/tests/httpapi/deleted.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_vlans/tests/httpapi/merged.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_vlans/tests/httpapi/overridden.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_vlans/tests/httpapi/replaced.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/exos_vlans/vars/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/nuage_vspk/aliases create mode 100644 ansible_collections/community/network/tests/integration/targets/nuage_vspk/defaults/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/nuage_vspk/meta/main.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/nuage_vspk/tasks/main.yml create mode 100644 ansible_collections/community/network/tests/integration/targets/nuage_vspk/tests/basic.yaml create mode 100644 ansible_collections/community/network/tests/integration/targets/prepare_nuage_tests/tasks/main.yml create mode 100644 ansible_collections/community/network/tests/requirements.yml create mode 100644 ansible_collections/community/network/tests/sanity/extra/botmeta.json create mode 100755 ansible_collections/community/network/tests/sanity/extra/botmeta.py create mode 100644 ansible_collections/community/network/tests/sanity/extra/extra-docs.json create mode 100755 ansible_collections/community/network/tests/sanity/extra/extra-docs.py create mode 100644 ansible_collections/community/network/tests/sanity/extra/no-unwanted-files.json create mode 100755 ansible_collections/community/network/tests/sanity/extra/no-unwanted-files.py create mode 100644 ansible_collections/community/network/tests/sanity/ignore-2.11.txt create mode 100644 ansible_collections/community/network/tests/sanity/ignore-2.12.txt create mode 100644 ansible_collections/community/network/tests/sanity/ignore-2.13.txt create mode 100644 ansible_collections/community/network/tests/sanity/ignore-2.14.txt create mode 100644 ansible_collections/community/network/tests/sanity/ignore-2.15.txt create mode 100644 ansible_collections/community/network/tests/unit/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/compat/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/compat/builtins.py create mode 100644 ansible_collections/community/network/tests/unit/compat/mock.py create mode 100644 ansible_collections/community/network/tests/unit/compat/unittest.py create mode 100644 ansible_collections/community/network/tests/unit/mock/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/mock/loader.py create mode 100644 ansible_collections/community/network/tests/unit/mock/path.py create mode 100644 ansible_collections/community/network/tests/unit/mock/procenv.py create mode 100644 ansible_collections/community/network/tests/unit/mock/vault_helper.py create mode 100644 ansible_collections/community/network/tests/unit/mock/yaml_helper.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/cliconf/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/cliconf/fixtures/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/cliconf/fixtures/ios/show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/cliconf/fixtures/nos/show_chassis create mode 100644 ansible_collections/community/network/tests/unit/plugins/cliconf/fixtures/nos/show_running-config create mode 100644 ansible_collections/community/network/tests/unit/plugins/cliconf/fixtures/nos/show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/cliconf/fixtures/slxos/show_chassis create mode 100644 ansible_collections/community/network/tests/unit/plugins/cliconf/fixtures/slxos/show_running-config create mode 100644 ansible_collections/community/network/tests/unit/plugins/cliconf/fixtures/slxos/show_startup-config create mode 100644 ansible_collections/community/network/tests/unit/plugins/cliconf/fixtures/slxos/show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/cliconf/fixtures/weos4/show_running-config create mode 100644 ansible_collections/community/network/tests/unit/plugins/cliconf/fixtures/weos4/show_system-information create mode 100644 ansible_collections/community/network/tests/unit/plugins/cliconf/test_nos.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/cliconf/test_slxos.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/cliconf/test_weos4.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/httpapi/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/httpapi/test_ftd.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/lookup/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/lookup/fixtures/avi.json create mode 100644 ansible_collections/community/network/tests/unit/plugins/lookup/test_avi.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/avi/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/avi/test_avi_api_utils.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/common/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/common/test_parsing.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/common/test_utils.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/ftd/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/ftd/test_common.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/ftd/test_configuration.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/ftd/test_data/ngfw_with_ex.json create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/ftd/test_device.py.disabled create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/ftd/test_fdm_swagger_parser.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/ftd/test_fdm_swagger_validator.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/ftd/test_fdm_swagger_with_real_data.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/ftd/test_upsert_functionality.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/netscaler/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/netscaler/test_netscaler.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/nos/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/nos/test_nos.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/slxos/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/module_utils/network/slxos/test_slxos.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/aireos_fixtures/aireos_config_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/aireos_fixtures/aireos_config_src.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/aireos_fixtures/show_sysinfo create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/aireos_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/apconos_fixtures/enable_ssh create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/apconos_fixtures/show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/apconos_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/aruba_fixtures/aruba_config_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/aruba_fixtures/aruba_config_defaults.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/aruba_fixtures/aruba_config_src.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/aruba_fixtures/show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/aruba_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/avi_fixtures/avi_user.json create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_is_is_instance/after.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_is_is_instance/before.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_is_is_interface/after_interface.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_is_is_interface/before_interface.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_is_is_view/after.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_is_is_view/before.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_lacp/ce_lacp_00.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_lacp/ce_lacp_01.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_lacp/ce_lacp_10.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_lacp/ce_lacp_11.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_lldp/ce_lldpSysParameter_00.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_lldp/ce_lldpSysParameter_01.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_lldp/ce_lldp_global_00.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_lldp/ce_lldp_global_01.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_lldp/result_ok.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_lldp_interface/lldp_interface_changed.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_lldp_interface/lldp_interface_existing.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_lldp_interface/result_ok.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_mdn_interface/after.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_mdn_interface/before.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_multicast_global/after.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_multicast_global/before.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_multicast_igmp_enable/after.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_multicast_igmp_enable/before.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_static_route_bfd/result_ok.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_static_route_bfd/srBfdPara_1.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_static_route_bfd/srBfdPara_2.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_static_route_bfd/staticrtbase_1.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_fixtures/ce_static_route_bfd/staticrtbase_2.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ce_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/cnos_banner_show_banner.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/cnos_bgp_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/cnos_config_src.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/cnos_linkagg_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/cnos_logging_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/cnos_static_route.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/cnos_system_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/cnos_user_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/cnos_vlag_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/cnos_vlan_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/cnos_vrf_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/l3_interface_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_interface_brief create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_interface_ethernet_1_33_switchport create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_interface_ethernet_1_44_switchport create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_interface_ethernet_1_45_switchport create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_interface_mac-address create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_interface_status create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_ip_interface_brief_vrf_all create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_ipv6_interface_brief_vrf_all create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_lldp_neighbors create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_process_memory create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_run create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_run_interface_ethernet_1_33 create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_run_interface_ethernet_1_45 create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_running-config create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_sys-info create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_fixtures/show_vlan create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/cnos_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ct.vm create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/eccli_fixtures/configure_terminal create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/eccli_fixtures/show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/eccli_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/edgeos_fixtures/edgeos_config_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/edgeos_fixtures/edgeos_config_src.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/edgeos_fixtures/edgeos_config_src_brackets.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/edgeos_fixtures/show_host_name create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/edgeos_fixtures/show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/edgeos_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/edgeswitch_fixtures/edgeswitch_facts_show_interfaces_description create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/edgeswitch_fixtures/edgeswitch_facts_show_interfaces_status_all create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/edgeswitch_fixtures/edgeswitch_facts_show_sysinfo create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/edgeswitch_fixtures/edgeswitch_facts_show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/edgeswitch_fixtures/edgeswitch_vlan_show_interfaces_switchport create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/edgeswitch_fixtures/edgeswitch_vlan_show_vlan_brief create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/edgeswitch_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/enos_fixtures/enos_config_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/enos_fixtures/enos_config_src.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/enos_fixtures/show_interface_ip create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/enos_fixtures/show_interface_status create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/enos_fixtures/show_lldp_port create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/enos_fixtures/show_lldp_remote-device_port create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/enos_fixtures/show_run create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/enos_fixtures/show_running-config create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/enos_fixtures/show_system_memory create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/enos_fixtures/show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/enos_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/exos_fixtures/exos_config_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/exos_fixtures/exos_config_modified.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/exos_fixtures/exos_config_src.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/exos_fixtures/show_lldp_neighbors create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/exos_fixtures/show_memory create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/exos_fixtures/show_port_config create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/exos_fixtures/show_port_description create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/exos_fixtures/show_switch create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/exos_fixtures/show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/exos_fixtures/show_vlan create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/exos_fixtures/show_vlan_detail create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/exos_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/configure_terminal create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_banner_show_banner.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_config_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_config_src.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_copy.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_interface_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_lldp_None create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_lldp_absent create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_lldp_present create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_logging_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_ping_ping_10.255.255.250_count_2 create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_ping_ping_10.255.255.250_count_2_timeout_45 create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_ping_ping_8.8.8.8_count_2 create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_ping_ping_8.8.8.8_count_5_ttl_70 create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_ping_ping_8.8.8.8_size_10001 create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_ping_ping_8.8.8.8_ttl_300 create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_static_route_config.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_system.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/icx_vlan_config create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/lag_running_config.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/show_flash create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/show_interfaces create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/show_lldp create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/show_lldp_neighbors_detail create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/show_media create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/show_memory create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/show_running-config create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/show_running-config_begin_interface create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/show_running-config_include_hostname create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/show_running-config_include_username.txt create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_fixtures/skip create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/icx_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ingate_fixtures/test_ig_config_add.json create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ingate_fixtures/test_ig_config_delete.json create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ingate_fixtures/test_ig_config_download.json create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ingate_fixtures/test_ig_config_factory.json create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ingate_fixtures/test_ig_config_get.json create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ingate_fixtures/test_ig_config_modify.json create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ingate_fixtures/test_ig_config_return_rowid.json create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ingate_fixtures/test_ig_config_revert.json create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ingate_fixtures/test_ig_config_store.json create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ingate_fixtures/test_ig_unit_information.json create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ingate_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ironware_fixtures/dir create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ironware_fixtures/ironware_config_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ironware_fixtures/ironware_config_defaults.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ironware_fixtures/ironware_config_src.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ironware_fixtures/show_chassis create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ironware_fixtures/show_interfaces create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ironware_fixtures/show_ipv6_interface create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ironware_fixtures/show_lldp_neighbors create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ironware_fixtures/show_memory create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ironware_fixtures/show_mpls_lsp_detail create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ironware_fixtures/show_mpls_vll-local_detail create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ironware_fixtures/show_mpls_vll_detail create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ironware_fixtures/show_mpls_vpls_detail create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ironware_fixtures/show_running-config create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ironware_fixtures/show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/ironware_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/netscaler_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/nos_fixtures/nos_config_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/nos_fixtures/nos_config_src.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/nos_fixtures/nos_facts_show_inventory_chassis create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/nos_fixtures/nos_facts_show_running-config create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/nos_fixtures/nos_facts_show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/nos_fixtures/show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/nos_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/nuage_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/nvos_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/opx_fixtures/opx_get_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/opx_fixtures/opx_operation_create.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/opx_fixtures/opx_operation_delete.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/opx_fixtures/opx_operation_get.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/opx_fixtures/opx_operation_get_db.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/opx_fixtures/opx_operation_set.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/opx_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/slxos_fixtures/show_interface_ethernet_0_2_switchport create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/slxos_fixtures/show_interface_ethernet_0_3_switchport create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/slxos_fixtures/show_interface_ethernet_0_4_switchport create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/slxos_fixtures/show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/slxos_fixtures/show_vlan_brief create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/slxos_fixtures/slxos_config_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/slxos_fixtures/slxos_config_src.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/slxos_fixtures/slxos_facts_show_inventory_chassis create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/slxos_fixtures/slxos_facts_show_running-config create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/slxos_fixtures/slxos_facts_show_version create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/slxos_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_aireos_command.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_aireos_config.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_apconos_command.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_aruba_command.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_aruba_config.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_avi_user.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ce_is_is_instance.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ce_is_is_interface.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ce_is_is_view.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ce_lacp.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ce_lldp.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ce_lldp_interface.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ce_mdn_interface.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ce_multicast_global.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ce_multicast_igmp_enable.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ce_static_route_bfd.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_cnos_banner.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_cnos_bgp.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_cnos_command.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_cnos_facts.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_cnos_l3_interface.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_cnos_linkagg.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_cnos_logging.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_cnos_static_route.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_cnos_system.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_cnos_user.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_cnos_vlag.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_cnos_vlan.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_cnos_vrf.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_cv_server_provision.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_dladm_vnic.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_edgeos_command.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_edgeos_config.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_edgeos_facts.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_edgeswitch_facts.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_edgeswitch_vlan.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_enos_command.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_enos_config.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_enos_facts.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_eric_eccli_command.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_exos_command.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_exos_config.py.disabled create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_exos_facts.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ftd_configuration.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ftd_file_download.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ftd_file_upload.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ftd_install.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_iap_start_workflow.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_iap_token.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_icx_banner.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_icx_command.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_icx_config.py.disabled create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_icx_copy.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_icx_facts.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_icx_interface.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_icx_l3_interface.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_icx_linkagg.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_icx_lldp.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_icx_logging.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_icx_ping.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_icx_static_route.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_icx_system.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_icx_user.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_icx_vlan.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ig_config.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ig_unit_information.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ironware_command.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ironware_config.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_ironware_facts.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_nclu.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_netact_cm_command.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_netscaler_cs_action.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_netscaler_cs_policy.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_netscaler_cs_vserver.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_netscaler_gslb_service.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_netscaler_gslb_site.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_netscaler_gslb_vserver.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_netscaler_lb_monitor.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_netscaler_lb_vserver.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_netscaler_nitro_request.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_netscaler_save_config.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_netscaler_server.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_netscaler_service.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_netscaler_servicegroup.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_netscaler_ssl_certkey.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_nos_command.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_nos_config.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_nos_facts.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_nuage_vspk.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_opx_cps.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_access_list_ip.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_admin_service.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_admin_session_timeout.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_admin_syslog.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_connection_stats_settings.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_cpu_class.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_cpu_mgmt_class.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_dhcp_filter.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_dscp_map.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_dscp_map_pri_map.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_fabric_local.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_igmp_snooping.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_ipv6security_raguard.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_ipv6security_raguard_port.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_ipv6security_raguard_vlan.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_log_audit_exception.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_port_config.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_port_cos_bw.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_port_cos_rate_setting.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_prefix_list.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_prefix_list_network.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_role.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_snmp_community.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_snmp_trap_sink.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_snmp_vacm.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_stp.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_stp_port.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_switch_setup.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_user.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_vflow_table_profile.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_vrouter_bgp.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_vrouter_bgp_network.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_vrouter_interface_ip.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_vrouter_loopback_interface.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_vrouter_ospf.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_vrouter_ospf6.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_vrouter_packet_relay.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_vrouter_pim_config.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_pn_vtep.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_slxos_command.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_slxos_config.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_slxos_facts.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_slxos_interface.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_slxos_l2_interface.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_slxos_l3_interface.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_slxos_linkagg.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_slxos_lldp.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_slxos_vlan.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_vdirect_commit.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_vdirect_file.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_vdirect_runnable.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_voss_command.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_voss_config.py.disabled create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/test_voss_facts.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/utils.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/voss_fixtures/show_sys-info create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/voss_fixtures/voss_config_config.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/voss_fixtures/voss_config_ipv6.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/voss_fixtures/voss_config_src.cfg create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/voss_fixtures/voss_facts_show_interfaces_gigabitEthernet_interface create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/voss_fixtures/voss_facts_show_interfaces_gigabitEthernet_name create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/voss_fixtures/voss_facts_show_ip_interface create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/voss_fixtures/voss_facts_show_ipv6_address_interface create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/voss_fixtures/voss_facts_show_khi_performance_memory create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/voss_fixtures/voss_facts_show_lldp_neighbor create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/voss_fixtures/voss_facts_show_running-config create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/voss_fixtures/voss_facts_show_sys-info create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/voss_module.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/modules/wt.zip create mode 100644 ansible_collections/community/network/tests/unit/plugins/terminal/__init__.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/terminal/test_slxos.py create mode 100644 ansible_collections/community/network/tests/unit/plugins/terminal/test_weos4.py create mode 100644 ansible_collections/community/network/tests/unit/requirements.txt create mode 100644 ansible_collections/community/network/tests/utils/constraints.txt create mode 100644 ansible_collections/community/network/tests/utils/requirements.txt create mode 100755 ansible_collections/community/network/tests/utils/shippable/cloud.sh create mode 100644 ansible_collections/community/network/tests/utils/shippable/collection_versions_page_size-2.10.patch create mode 100644 ansible_collections/community/network/tests/utils/shippable/collection_versions_page_size-2.11.patch create mode 100644 ansible_collections/community/network/tests/utils/shippable/collection_versions_page_size-2.9.patch create mode 100644 ansible_collections/community/network/tests/utils/shippable/collection_versions_page_size-devel.patch create mode 100755 ansible_collections/community/network/tests/utils/shippable/freebsd.sh create mode 100755 ansible_collections/community/network/tests/utils/shippable/linux.sh create mode 100755 ansible_collections/community/network/tests/utils/shippable/macos.sh create mode 100755 ansible_collections/community/network/tests/utils/shippable/osx.sh create mode 100755 ansible_collections/community/network/tests/utils/shippable/remote.sh create mode 100755 ansible_collections/community/network/tests/utils/shippable/rhel.sh create mode 100755 ansible_collections/community/network/tests/utils/shippable/sanity.sh create mode 100755 ansible_collections/community/network/tests/utils/shippable/shippable.sh create mode 100755 ansible_collections/community/network/tests/utils/shippable/units.sh (limited to 'ansible_collections/community/network/tests') diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/aliases b/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/aliases new file mode 100644 index 000000000..ad7ccf7ad --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/aliases @@ -0,0 +1 @@ +unsupported diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/defaults/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/defaults/main.yaml new file mode 100644 index 000000000..164afead2 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/defaults/main.yaml @@ -0,0 +1,3 @@ +--- +testcase: "[^_].*" +test_items: [] diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/meta/main.yml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/meta/main.yml new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/meta/main.yml @@ -0,0 +1 @@ + diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/tasks/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/tasks/main.yaml new file mode 100644 index 000000000..e06ccf174 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/tasks/main.yaml @@ -0,0 +1,7 @@ +--- +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- { include: netconf.yaml, tags: ['netconf'] } diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/tasks/netconf.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/tasks/netconf.yaml new file mode 100644 index 000000000..73b91adfa --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/tasks/netconf.yaml @@ -0,0 +1,17 @@ +--- +- name: collect all netconf test cases + find: + paths: "{{ role_path }}/tests/netconf" + patterns: "{{ testcase }}.yaml" + use_regex: true + connection: local + register: test_cases + +- name: set test_items + set_fact: test_items="{{ test_cases.files | map(attribute='path') | list }}" + +- name: run test case (connection=netconf) + include: "{{ test_case_to_run }} ansible_connection=netconf" + with_items: "{{ test_items }}" + loop_control: + loop_var: test_case_to_run diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/tests/netconf/ce_is_is_instance.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/tests/netconf/ce_is_is_instance.yaml new file mode 100644 index 000000000..d7c5a7c6e --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_instance/tests/netconf/ce_is_is_instance.yaml @@ -0,0 +1,85 @@ +--- +- debug: + msg: "START ce_is_is_instance merged integration tests on connection={{ ansible_connection }}" + +- block: + - name: berfore merged, there should be no isis 100. + ce_is_is_instance: &delete + instance_id: 100 + state: absent + + - name: Merge the provided configuration with the exisiting running configuration + ce_is_is_instance: &merged + instance_id: 100 + vpn_name: '__public__' + register: result + + - name: change ansible_connection to network_cli + ce_netconf: + rpc: get + cfg_xml: " + + + + + + + + + " + register: result_xml + + - name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + - "'100' in result_xml.end_state.result" + - "'__public__' in result_xml.end_state.result" + + - name: Merge the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_instance: *merged + register: result + + - name: Assert that the previous task was idempotent + assert: + that: + - "result['changed'] == false" + + - name: delete the provided configuration with the exisiting running configuration + ce_is_is_instance: *delete + register: result + + - name: change ansible_connection to network_cli + ce_netconf: + rpc: get + cfg_xml: " + + + + + + + + + " + register: result_xml + + - name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + - "'100' not in result_xml.end_state.result" + - "'__public__' not in result_xml.end_state.result" + + - name: delete the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_instance: *delete + register: result + + - name: Assert that the previous task was idempotent + assert: + that: + - "result['changed'] == false" + + +- debug: + msg: "END ce_is_is_instance merged integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/aliases b/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/aliases new file mode 100644 index 000000000..ad7ccf7ad --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/aliases @@ -0,0 +1 @@ +unsupported diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/defaults/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/defaults/main.yaml new file mode 100644 index 000000000..164afead2 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/defaults/main.yaml @@ -0,0 +1,3 @@ +--- +testcase: "[^_].*" +test_items: [] diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/meta/main.yml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/meta/main.yml new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/meta/main.yml @@ -0,0 +1 @@ + diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/tasks/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/tasks/main.yaml new file mode 100644 index 000000000..e06ccf174 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/tasks/main.yaml @@ -0,0 +1,7 @@ +--- +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- { include: netconf.yaml, tags: ['netconf'] } diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/tasks/netconf.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/tasks/netconf.yaml new file mode 100644 index 000000000..73b91adfa --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/tasks/netconf.yaml @@ -0,0 +1,17 @@ +--- +- name: collect all netconf test cases + find: + paths: "{{ role_path }}/tests/netconf" + patterns: "{{ testcase }}.yaml" + use_regex: true + connection: local + register: test_cases + +- name: set test_items + set_fact: test_items="{{ test_cases.files | map(attribute='path') | list }}" + +- name: run test case (connection=netconf) + include: "{{ test_case_to_run }} ansible_connection=netconf" + with_items: "{{ test_items }}" + loop_control: + loop_var: test_case_to_run diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/tests/netconf/ce_is_is_interface.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/tests/netconf/ce_is_is_interface.yaml new file mode 100644 index 000000000..75afbbe89 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_interface/tests/netconf/ce_is_is_interface.yaml @@ -0,0 +1,133 @@ +--- +- debug: + msg: "START ce_is_is_interface merged integration tests on connection={{ ansible_connection }}" + +- block: + + - name: Merge the provided configuration with the exisiting running configuration + ce_is_is_interface: &delete + instance_id: 100 + ifname: 10GE1/0/1 + leveltype: level_1 + level1dispriority: 10 + silentenable: true + silentcost: true + typep2penable: true + snpacheck: true + p2pnegotiationmode: 2_way + p2ppeeripignore: true + ppposicpcheckenable: true + level2cost: 10 + state: absent + register: result + + - name: Merge the provided configuration with the exisiting running configuration + ce_is_is_interface: &merged + instance_id: 100 + ifname: 10GE1/0/1 + leveltype: level_1 + level1dispriority: 10 + silentenable: true + silentcost: true + typep2penable: true + snpacheck: true + p2pnegotiationmode: 2_way + p2ppeeripignore: true + ppposicpcheckenable: true + level2cost: 10 + register: result + + - name: use ce_netconf to get configuration + ce_netconf: + rpc: get + cfg_xml: " + + + + 100 + + + + + + + + " + register: result_xml + + - name: Assert the configuration is reflected on host + assert: + that: + - "'10GE1/0/1' in result_xml.end_state.result" + - "'level_1' in result_xml.end_state.result" + - "'10' in result_xml.end_state.result" + - "'10' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + - "'2_way' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + - "'10' in result_xml.end_state.result" + - "'10' in result_xml.end_state.result" + + - name: Merge the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_interface: *merged + register: result + + - name: Assert that the previous task was idempotent + assert: + that: + - "result['changed'] == false" + + - name: delete the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_interface: *delete + register: result + + - name: use ce_netconf to get configuration + ce_netconf: + rpc: get + cfg_xml: " + + + + 100 + + + + + + + + " + register: result_xml + + - name: Assert the configuration is reflected on host + assert: + that: + - "'10GE1/0/1' not in result_xml.end_state.result" + - "'level_1' not in result_xml.end_state.result" + - "'10' not in result_xml.end_state.result" + - "'10' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" + - "'2_way' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" + - "'10' not in result_xml.end_state.result" + - "'10' not in result_xml.end_state.result" + + - name: delete the provided configuration with the existing running configuration (REPEAT) + ce_is_is_interface: *delete + register: result + + - name: Assert that the previous task was REPEAT + assert: + that: + - "result['changed'] == false" + +- debug: + msg: "END ce_is_is_interface merged integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/aliases b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/aliases new file mode 100644 index 000000000..ad7ccf7ad --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/aliases @@ -0,0 +1 @@ +unsupported diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/defaults/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/defaults/main.yaml new file mode 100644 index 000000000..164afead2 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/defaults/main.yaml @@ -0,0 +1,3 @@ +--- +testcase: "[^_].*" +test_items: [] diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tasks/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tasks/main.yaml new file mode 100644 index 000000000..e06ccf174 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tasks/main.yaml @@ -0,0 +1,7 @@ +--- +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- { include: netconf.yaml, tags: ['netconf'] } diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tasks/netconf.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tasks/netconf.yaml new file mode 100644 index 000000000..73b91adfa --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tasks/netconf.yaml @@ -0,0 +1,17 @@ +--- +- name: collect all netconf test cases + find: + paths: "{{ role_path }}/tests/netconf" + patterns: "{{ testcase }}.yaml" + use_regex: true + connection: local + register: test_cases + +- name: set test_items + set_fact: test_items="{{ test_cases.files | map(attribute='path') | list }}" + +- name: run test case (connection=netconf) + include: "{{ test_case_to_run }} ansible_connection=netconf" + with_items: "{{ test_items }}" + loop_control: + loop_var: test_case_to_run diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/cleanup.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/cleanup.yaml new file mode 100644 index 000000000..03c0f0ee9 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/cleanup.yaml @@ -0,0 +1,21 @@ +--- +- debug: + msg: "CLEANUP ce_is_is_view, deleted integration tests on connection={{ ansible_connection }}" + +- name: Get lacp config by ce_netconf. + ce_netconf: + rpc: get + cfg_xml: " + + + + 100 + _public_ + ISIS + + + + " + +- debug: + msg: "END CLEANUP ce_is_is_view, deleted integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/setup.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/setup.yaml new file mode 100644 index 000000000..92ec370c2 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/setup.yaml @@ -0,0 +1,22 @@ +--- +- debug: + msg: "SETUP ce_is_is_view integration tests on connection={{ ansible_connection }}" +# create ISIS 100 + +- name: Get lacp config by ce_netconf. + ce_netconf: + rpc: get + cfg_xml: " + + + + 100 + _public_ + ISIS + + + + " + +- debug: + msg: "END SETUP ce_is_is_view integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_is_is_view_entity .yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_is_is_view_entity .yaml new file mode 100644 index 000000000..1c81c2ca7 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_is_is_view_entity .yaml @@ -0,0 +1,78 @@ +--- +- debug: + msg: "START ce_is_is_view entity presented integration tests on connection={{ ansible_connection }}" +- include_tasks: setup.yaml + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &present + instance_id: 100 + netentity: isis_net_entity + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get basic config by ce_netconf. + ce_netconf: &get_config + rpc: get + cfg_xml: " + + + + 100 + + + + + + + + + " + register: result_xml + + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *present + register: repeat + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'100' in result_xml.end_state.result" + - "'isis_net_entity' in result_xml.end_state.result" + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &absent + instance_id: 100 + netentity: isis_net_entity + state: absent + register: result + + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *absent + register: repeat + +- name: Get basic config by ce_netconf. + ce_netconf: *get_config + register: result_xml + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'100' not in result_xml.end_state.result" + - "''isis_net_entity' not in result_xml.end_state.result" + # after present, isis 100 should be deleted +- include_tasks: cleanup.yaml +- debug: + msg: "END ce_is_is_view pentity resentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_bfd.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_bfd.yaml new file mode 100644 index 000000000..6aa200f6e --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_bfd.yaml @@ -0,0 +1,92 @@ +--- +- debug: + msg: "START ce_is_is_view EXPORTROUTE route policy presented integration tests on connection={{ ansible_connection }}" +- include_tasks: setup.yaml + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &present + instance_id: 100 + bfd_min_rx: 100 + bfd_min_tx: 100 + bfd_multiplier_num: 10 + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get basic config by ce_netconf. + ce_netconf: &get_config + rpc: get + cfg_xml: " + + + + 100 + + + afIpv4 + 0 + + + + + + + + + " + register: result_xml + + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *present + register: repeat + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'100' in result_xml.end_state.result" + - "'100' in result_xml.end_state.result" + - "'10' in result_xml.end_state.result" + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &absent + instance_id: 100 + defaultmode: always + cost: 10 + mode_tag: 10 + level_type: level_1 + avoid_learning: true + mode_routepolicyname: routepolicy_name + tag: 100 + state: absent + register: result + + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *absent + register: repeat + +- name: Get basic config by ce_netconf. + ce_netconf: *get_config + register: result_xml + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'100' not in result_xml.end_state.result" + - "'100' not in result_xml.end_state.result" + - "'10' not in result_xml.end_state.result" +# after present, isis 100 should be deleted +- include_tasks: cleanup.yaml +- debug: + msg: "END ce_is_is_view EXPORTROUTE route policy resentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_export.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_export.yaml new file mode 100644 index 000000000..f83a07c2c --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_export.yaml @@ -0,0 +1,96 @@ +--- +- debug: + msg: "START ce_is_is_view EXPORTROUTE route policy presented integration tests on connection={{ ansible_connection }}" +- include_tasks: setup.yaml + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &present + instance_id: 100 + export_protocol: ospf + export_policytype: aclNumOrName + export_processid: 100 + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get basic config by ce_netconf. + ce_netconf: &get_config + rpc: get + cfg_xml: " + + + + 100 + + + afIpv4 + 0 + + + + + + + + + + + + + " + register: result_xml + + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *present + register: repeat + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'ospf' in result_xml.end_state.result" + - "'100' in result_xml.end_state.result" + - "'level_1' in result_xml.end_state.result" + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &absent + instance_id: 100 + defaultmode: always + cost: 10 + mode_tag: 10 + level_type: level_1 + avoid_learning: true + mode_routepolicyname: routepolicy_name + tag: 100 + state: absent + register: result + + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *absent + register: repeat + +- name: Get basic config by ce_netconf. + ce_netconf: *get_config + register: result_xml + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'ospf' not in result_xml.end_state.result" + - "'100' not in result_xml.end_state.result" + - "'level_1' in result_xml.end_state.result" +# after present, isis 100 should be deleted +- include_tasks: cleanup.yaml +- debug: + msg: "END ce_is_is_view EXPORTROUTE route policy resentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_import.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_import.yaml new file mode 100644 index 000000000..c5b4e60df --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_import.yaml @@ -0,0 +1,124 @@ +--- +- debug: + msg: "START ce_is_is_view import route policy presented integration tests on connection={{ ansible_connection }}" +- include_tasks: setup.yaml + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &present + instance_id: 100 + protocol: ospf + processid: 100 + cost_type: external + import_cost: 10 + import_tag: 10 + import_route_policy: routepolicy_name + impotr_leveltype: level_1 + inheritcost: true + permitibgp: true + tag: 100 + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get basic config by ce_netconf. + ce_netconf: &get_config + rpc: get + cfg_xml: " + + + + 100 + + + afIpv4 + 0 + + + + + + + + + + + + + + + + + + + + " + register: result_xml + + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *present + register: repeat + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'ospf' in result_xml.end_state.result" + - "'100' in result_xml.end_state.result" + - "'external' in result_xml.end_state.result" + - "'10' in result_xml.end_state.result" + - "'10' in result_xml.end_state.result" + - "'level_1' in result_xml.end_state.result" + - "'routepolicy_name' in result_xml.end_state.result" + - "'level_1' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &absent + instance_id: 100 + defaultmode: always + cost: 10 + mode_tag: 10 + level_type: level_1 + avoid_learning: true + mode_routepolicyname: routepolicy_name + tag: 100 + state: absent + register: result + + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *absent + register: repeat + +- name: Get basic config by ce_netconf. + ce_netconf: *get_config + register: result_xml + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'ospf' not in result_xml.end_state.result" + - "'100' not in result_xml.end_state.result" + - "'external' not in result_xml.end_state.result" + - "'10' not in result_xml.end_state.result" + - "'10' not in result_xml.end_state.result" + - "'level_1' not in result_xml.end_state.result" + - "'routepolicy_name' not in result_xml.end_state.result" + - "'level_1' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" +# after present, isis 100 should be deleted +- include_tasks: cleanup.yaml +- debug: + msg: "END ce_is_is_view import route policy resentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_l1tol2.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_l1tol2.yaml new file mode 100644 index 000000000..f12b5034b --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_l1tol2.yaml @@ -0,0 +1,109 @@ +--- +- debug: + msg: "START ce_is_is_view import route policy presented integration tests on connection={{ ansible_connection }}" +- include_tasks: setup.yaml + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &present + instance_id: 100 + allow_filter: true + allow_up_down: true + ip_prefix_name: prefix_name + aclnum_or_name: 3001 + penetration_direct: level1-level2 + import_routepolicy_name: routepolicy_name + tag: 100 + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get basic config by ce_netconf. + ce_netconf: &get_config + rpc: get + cfg_xml: " + + + + 100 + + + afIpv4 + 0 + + + + + + + + + + + + + + + + " + register: result_xml + + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *present + register: repeat + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'100' in result_xml.end_state.result" + - "'routepolicy_name' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + - "'3001' in result_xml.end_state.result" + - "'prefix_name' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &absent + instance_id: 100 + allow_filter: true + allow_up_down: true + ip_prefix_name: prefix_name + aclnum_or_name: 3001 + penetration_direct: level1-level2 + import_routepolicy_name: routepolicy_name + tag: 100 + state: absent + register: result + + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *absent + register: repeat + +- name: Get basic config by ce_netconf. + ce_netconf: *get_config + register: result_xml + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'100' in result_xml.end_state.result" + - "'routepolicy_name' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" + - "'3001' not in result_xml.end_state.result" + - "'prefix_name' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" + # after present, isis 100 should be deleted +- include_tasks: cleanup.yaml +- debug: + msg: "END ce_is_is_view import route policy resentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_l2tol1.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_l2tol1.yaml new file mode 100644 index 000000000..3af5111fb --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_l2tol1.yaml @@ -0,0 +1,109 @@ +--- +- debug: + msg: "START ce_is_is_view import route policy presented integration tests on connection={{ ansible_connection }}" +- include_tasks: setup.yaml + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &present + instance_id: 100 + penetration_direct: level2-level1 + allow_filter: true + allow_up_down: true + ip_prefix_name: prefix_name + aclnum_or_name: 3001 + import_routepolicy_name: routepolicy_name + tag: 100 + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get basic config by ce_netconf. + ce_netconf: &get_config + rpc: get + cfg_xml: " + + + + 100 + + + afIpv4 + 0 + + + + + + + + + + + + + + + + " + register: result_xml + + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *present + register: repeat + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'100' in result_xml.end_state.result" + - "'routepolicy_name' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + - "'3001' in result_xml.end_state.result" + - "'prefix_name' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &absent + instance_id: 100 + penetration_direct: level2-level1 + allow_filter: true + allow_up_down: true + ip_prefix_name: prefix_name + aclnum_or_name: 3001 + import_routepolicy_name: routepolicy_name + tag: 100 + state: absent + register: result + + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *absent + register: repeat + +- name: Get basic config by ce_netconf. + ce_netconf: *get_config + register: result_xml + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'100' in result_xml.end_state.result" + - "'routepolicy_name' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" + - "'3001' not in result_xml.end_state.result" + - "'prefix_name' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" + # after present, isis 100 should be deleted +- include_tasks: cleanup.yaml +- debug: + msg: "END ce_is_is_view import route policy resentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_max_load.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_max_load.yaml new file mode 100644 index 000000000..0629d3415 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_max_load.yaml @@ -0,0 +1,80 @@ +--- +- debug: + msg: "START ce_is_is_view maxLoadBalancing presented integration tests on connection={{ ansible_connection }}" +- include_tasks: setup.yaml + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &present + instance_id: 100 + max_load: 30 + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get basic config by ce_netconf. + ce_netconf: &get_config + rpc: get + cfg_xml: " + + + + 100 + + + afIpv4 + 0 + + + + + + + " + register: result_xml + + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *present + register: repeat + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'100' in result_xml.end_state.result" + - "'30' in result_xml.end_state.result" + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &absent + instance_id: 100 + max_load: 30 + state: absent + register: result + + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *absent + register: repeat + +- name: Get basic config by ce_netconf. + ce_netconf: *get_config + register: result_xml + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'100' not in result_xml.end_state.result" + - "'30' not in result_xml.end_state.result" + # after present, isis 100 should be deleted +- include_tasks: cleanup.yaml +- debug: + msg: "END ce_is_is_view maxLoadBalancing resentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_preferences.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_preferences.yaml new file mode 100644 index 000000000..97d232fec --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_preferences.yaml @@ -0,0 +1,87 @@ +--- +- debug: + msg: "START ce_is_is_view preferences presented integration tests on connection={{ ansible_connection }}" +- include_tasks: setup.yaml + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &present + instance_id: 100 + preference_value: 100 + route_policy_name: route + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get basic config by ce_netconf. + ce_netconf: &get_config + rpc: get + cfg_xml: " + + + + 100 + + + + + + + + + + + + + + " + register: result_xml + + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *present + register: repeat + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'100' in result_xml.end_state.result" + - "'100' in result_xml.end_state.result" + - "'route' in result_xml.end_state.result" + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &absent + instance_id: 100 + preference_value: 100 + route_policy_name: route + state: absent + register: result + + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *absent + register: repeat + +- name: Get basic config by ce_netconf. + ce_netconf: *get_config + register: result_xml + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'100' not in result_xml.end_state.result" + - "''100' not in result_xml.end_state.result" + - "''route' not in result_xml.end_state.result" + # after present, isis 100 should be deleted +- include_tasks: cleanup.yaml +- debug: + msg: "END ce_is_is_view Preference resentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_view_basic.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_view_basic.yaml new file mode 100644 index 000000000..ca95d0e05 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_isis_view_basic.yaml @@ -0,0 +1,115 @@ +--- +- debug: + msg: "START ce_is_is_view presented integration tests on connection={{ ansible_connection }}" +- include_tasks: setup.yaml + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &present + instance_id: 100 + description: ISIS + islevel: level_1 + coststyle: narrow + relaxSpfLimit: true + stdlevel1cost: 60 + stdlevel2cost: 60 + stdbandwidth: 100 + autocostenable: true + autocostenablecompatible: true + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get basic config by ce_netconf. + ce_netconf: &get_config + rpc: get + cfg_xml: " + + + + 100 + + + + + + + + + + + + " + register: result_xml + + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *present + register: repeat + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'100' in result_xml.end_state.result" + - "'_public_' in result_xml.end_state.result" + - "'ISIS' in result_xml.end_state.result" + - "'level_1' in result_xml.end_state.result" + - "'narrow' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + - "'60' in result_xml.end_state.result" + - "'60' in result_xml.end_state.result" + - "'100' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &absent + instance_id: 100 + description: ISIS + islevel: level_1 + coststyle: narrow + relaxSpfLimit: true + stdlevel1cost: 60 + stdlevel2cost: 60 + stdbandwidth: 100 + autocostenable: true + autocostenablecompatible: true + state: absent + register: result + + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *absent + register: repeat + +- name: Get basic config by ce_netconf. + ce_netconf: *get_config + register: result_xml + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'100' not in result_xml.end_state.result" + - "'_public_' not in result_xml.end_state.result" + - "'ISIS' not in result_xml.end_state.result" + - "'level_1' not in result_xml.end_state.result" + - "'narrow' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" + - "'60' not in result_xml.end_state.result" + - "'60' not in result_xml.end_state.result" + - "'100' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" +# after present, isis 100 should be deleted +- include_tasks: cleanup.yaml +- debug: + msg: "END ce_is_is_view presentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_issi_default.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_issi_default.yaml new file mode 100644 index 000000000..1059054dc --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_ce_issi_default.yaml @@ -0,0 +1,111 @@ +--- +- debug: + msg: "START ce_is_is_view import route policy presented integration tests on connection={{ ansible_connection }}" +- include_tasks: setup.yaml + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &present + instance_id: 100 + defaultmode: always + cost: 10 + mode_tag: 10 + level_type: level_1 + avoid_learning: true + mode_routepolicyname: routepolicy_name + tag: 100 + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get basic config by ce_netconf. + ce_netconf: &get_config + rpc: get + cfg_xml: " + + + + 100 + + + afIpv4 + 0 + + + + + + + + + + + + + + + + " + register: result_xml + + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *present + register: repeat + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'100' in result_xml.end_state.result" + - "'always' in result_xml.end_state.result" + - "'routepolicy_name' in result_xml.end_state.result" + - "'10' in result_xml.end_state.result" + - "'10' in result_xml.end_state.result" + - "'level_1' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &absent + instance_id: 100 + defaultmode: always + cost: 10 + mode_tag: 10 + level_type: level_1 + avoid_learning: true + mode_routepolicyname: routepolicy_name + tag: 100 + state: absent + register: result + + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *absent + register: repeat + +- name: Get basic config by ce_netconf. + ce_netconf: *get_config + register: result_xml + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'100' not in result_xml.end_state.result" + - "'always' not in result_xml.end_state.result" + - "'routepolicy_name' not in result_xml.end_state.result" + - "'10' not in result_xml.end_state.result" + - "'10' not in result_xml.end_state.result" + - "'level_1' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" +# after present, isis 100 should be deleted +- include_tasks: cleanup.yaml +- debug: + msg: "END ce_is_is_view import route policy resentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_isis_filter_import.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_isis_filter_import.yaml new file mode 100644 index 000000000..7a97d982d --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_isis_filter_import.yaml @@ -0,0 +1,97 @@ +--- +- debug: + msg: "START ce_is_is_view EXPORTROUTE route policy presented integration tests on connection={{ ansible_connection }}" +- include_tasks: setup.yaml + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &present + instance_id: 100 + import_aclnumorname: 301 + import_ipprefix: ipprefix + import_routepolicyname: routepolicyname + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get basic config by ce_netconf. + ce_netconf: &get_config + rpc: get + cfg_xml: " + + + + 100 + + + afIpv4 + 0 + + + + + + + + + + + + + " + register: result_xml + + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *present + register: repeat + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'3001' in result_xml.end_state.result" + - "'ipprefix' in result_xml.end_state.result" + - "'routepolicyname' in result_xml.end_state.result" + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &absent + instance_id: 100 + defaultmode: always + cost: 10 + mode_tag: 10 + level_type: level_1 + avoid_learning: true + mode_routepolicyname: routepolicy_name + tag: 100 + state: absent + register: result + + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *absent + register: repeat + +- name: Get basic config by ce_netconf. + ce_netconf: *get_config + register: result_xml + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'3001' not in result_xml.end_state.result" + - "'ipprefix' not in result_xml.end_state.result" + - "'routepolicyname' not in result_xml.end_state.result" + +# after present, isis 100 should be deleted +- include_tasks: cleanup.yaml +- debug: + msg: "END ce_is_is_view EXPORTROUTE route policy resentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_isis_next_hop.yaml b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_isis_next_hop.yaml new file mode 100644 index 000000000..f18eeaf84 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_is_is_view/tests/netconf/test_isis_next_hop.yaml @@ -0,0 +1,87 @@ +--- +- debug: + msg: "START ce_is_is_view next hop presented integration tests on connection={{ ansible_connection }}" +- include_tasks: setup.yaml + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &present + instance_id: 100 + ip_address: 1.1.1.1 + weight: 100 + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get basic config by ce_netconf. + ce_netconf: &get_config + rpc: get + cfg_xml: " + + + + 100 + + + afIpv4 + 0 + + + + + + + + + + + + " + register: result_xml + + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *present + register: repeat + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'1.1.1.1' in result_xml.end_state.result" + - "'100' in result_xml.end_state.result" + +- name: present the provided configuration with the exisiting running configuration + ce_is_is_view: &absent + instance_id: 100 + ip_address: 1.1.1.1 + weight: 100 + state: absent + register: result + + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_is_is_view: *absent + register: repeat + +- name: Get basic config by ce_netconf. + ce_netconf: *get_config + register: result_xml + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'1.1.1.1' not in result_xml.end_state.result" + - "'100' not in result_xml.end_state.result" + # after present, isis 100 should be deleted +- include_tasks: cleanup.yaml +- debug: + msg: "END ce_is_is_view next hop resentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lacp/aliases b/ansible_collections/community/network/tests/integration/targets/ce_lacp/aliases new file mode 100644 index 000000000..ad7ccf7ad --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lacp/aliases @@ -0,0 +1 @@ +unsupported diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lacp/defaults/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lacp/defaults/main.yaml new file mode 100644 index 000000000..164afead2 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lacp/defaults/main.yaml @@ -0,0 +1,3 @@ +--- +testcase: "[^_].*" +test_items: [] diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lacp/tasks/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lacp/tasks/main.yaml new file mode 100644 index 000000000..e06ccf174 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lacp/tasks/main.yaml @@ -0,0 +1,7 @@ +--- +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- { include: netconf.yaml, tags: ['netconf'] } diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lacp/tasks/netconf.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lacp/tasks/netconf.yaml new file mode 100644 index 000000000..73b91adfa --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lacp/tasks/netconf.yaml @@ -0,0 +1,17 @@ +--- +- name: collect all netconf test cases + find: + paths: "{{ role_path }}/tests/netconf" + patterns: "{{ testcase }}.yaml" + use_regex: true + connection: local + register: test_cases + +- name: set test_items + set_fact: test_items="{{ test_cases.files | map(attribute='path') | list }}" + +- name: run test case (connection=netconf) + include: "{{ test_case_to_run }} ansible_connection=netconf" + with_items: "{{ test_items }}" + loop_control: + loop_var: test_case_to_run diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lacp/tests/netconf/absent.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lacp/tests/netconf/absent.yaml new file mode 100644 index 000000000..2c32e574d --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lacp/tests/netconf/absent.yaml @@ -0,0 +1,95 @@ +--- +- debug: + msg: "START ce_lacp merged integration tests on connection={{ ansible_connection }}" +# befor removing, it should be merged +- include_tasks: merge.yaml + +- name: Merge the provided configuration with the exisiting running configuration + ce_lacp: &absent + mode: Dynamic + trunk_id: 10 + preempt_enable: True + state_flapping: True + port_id_extension_enable: True + unexpected_mac_disable: True + system_id: 1111-2222-3333 + timeout_type: Fast + fast_timeout: 12 + mixed_rate_link_enable: True + preempt_delay: 12 + collector_delay: 12 + max_active_linknumber: 2 + select: Prority + priority: 23 + global_priority: 123 + state: absent + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get lacp config by ce_netconf. + ce_netconf: + rpc: get + cfg_xml: " + + + + Eth-Trunk10 + + + + + + + + + + + + + + + + + + " + register: result_ifs_merged + +- name: Get lacp config by ce_netconf. + ce_netconf: + rpc: get + cfg_xml: " + + + + + + " + register: result_global_merged + + +- name: Merge the provided configuration with the existing running configuration (IDEMPOTENT) + ce_lacp: *absent + register: result_re_merged + +- name: Assert that the previous task was idempotent, some become ot default values, others depend on devices. + assert: + that: + - "result_re_merged.changed == false" + - "'false' == result_ifs_merged.end_state.result" + - "'Slow' == result_ifs_merged.end_state.result" + - "'90' == result_ifs_merged.end_state.result" + - "'Prority' == result_ifs_merged.end_state.result" + - "'30' == result_ifs_merged.end_state.result" + - "'0' in result_ifs_merged.end_state.result" + - "'false' in result_ifs_merged.end_state.result" + - "'false' in result_ifs_merged.end_state.result" + - "'false' in result_ifs_merged.end_state.result" + - "'false' in result_ifs_merged.end_state.result" + - "'32768' in result_global_merged.end_state.result" + +- debug: + msg: "END ce_lacp merged integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lacp/tests/netconf/delete.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lacp/tests/netconf/delete.yaml new file mode 100644 index 000000000..a3ce81723 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lacp/tests/netconf/delete.yaml @@ -0,0 +1,32 @@ +--- +- debug: + msg: "START ce_lacp deleted integration tests on connection={{ ansible_connection }}" + +- name: Merge the provided configuration with the exisiting running configuration + ce_lacp: + mode: Dynamic + trunk_id: 10 + preempt_enable: True + state_flapping: True + port_id_extension_enable: True + unexpected_mac_disable: True + system_id: 1111-2222-3333 + timeout_type: Fast + fast_timeout: 12 + mixed_rate_link_enable: True + preempt_delay: 12 + collector_delay: 12 + max_active_linknumber: 2 + select: Prority + priority: 23 + global_priority: 123 + state: absent + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- debug: + msg: "END ce_lacp deleted integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lacp/tests/netconf/merge.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lacp/tests/netconf/merge.yaml new file mode 100644 index 000000000..eef3956ee --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lacp/tests/netconf/merge.yaml @@ -0,0 +1,31 @@ +--- +- debug: + msg: "START ce_lacp merged integration tests on connection={{ ansible_connection }}" + +- name: Merge the provided configuration with the exisiting running configuration + ce_lacp: + mode: Dynamic + trunk_id: 10 + preempt_enable: True + state_flapping: True + port_id_extension_enable: True + unexpected_mac_disable: True + system_id: 1111-2222-3333 + timeout_type: Fast + fast_timeout: 12 + mixed_rate_link_enable: True + preempt_delay: 12 + collector_delay: 12 + max_active_linknumber: 2 + select: Prority + priority: 23 + global_priority: 123 + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- debug: + msg: "END ce_lacp merged integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lacp/tests/netconf/present.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lacp/tests/netconf/present.yaml new file mode 100644 index 000000000..ee696c9e1 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lacp/tests/netconf/present.yaml @@ -0,0 +1,103 @@ +--- +- debug: + msg: "START ce_lacp presented integration tests on connection={{ ansible_connection }}" + +- name: present the provided configuration with the exisiting running configuration + ce_lacp: &present + mode: Dynamic + trunk_id: 10 + preempt_enable: True + state_flapping: True + port_id_extension_enable: True + unexpected_mac_disable: True + system_id: 1111-2222-3333 + timeout_type: Fast + fast_timeout: 12 + mixed_rate_link_enable: True + preempt_delay: 12 + collector_delay: 12 + max_active_linknumber: 2 + select: Prority + priority: 23 + global_priority: 123 + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get lacp config by ce_netconf. + ce_netconf: + rpc: get + cfg_xml: " + + + + Eth-Trunk10 + + + + + + + + + + + + + + + + + + + " + register: result_ifs_presentd + +- name: Get global lacp config by ce_netconf. + ce_netconf: + rpc: get + cfg_xml: " + + + + + + + + + + " + register: result_global_presentd + + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_lacp: *present + register: result_re_presentd + +- name: Assert that the previous task was idempotent + assert: + that: + - "result_re_presentd.changed == false" + - "'Dynamic' == result_ifs_presentd.end_state.result" + - "'true' == result_ifs_presentd.end_state.result" + - "'Fast' == result_ifs_presentd.end_state.result" + - "'12' == result_ifs_presentd.end_state.result" + - "'Prority' == result_ifs_presentd.end_state.result" + - "'12' == result_ifs_presentd.end_state.result" + - "'2' == result_ifs_presentd.end_state.result" + - "'12' in result_ifs_presentd.end_state.result" + - "'true' in result_ifs_presentd.end_state.result" + - "'true' in result_ifs_presentd.end_state.result" + - "'true' in result_ifs_presentd.end_state.result" + - "'true' in result_ifs_presentd.end_state.result" + - "'true' in result_ifs_presentd.end_state.result" + - "'1111-2222-3333' in result_global_presentd.end_state.result" + - "'123' in result_global_presentd.end_state.result" + +# after present, it should be deleted +- include_tasks: delete.yaml +- debug: + msg: "END ce_lacp presentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lldp/aliases b/ansible_collections/community/network/tests/integration/targets/ce_lldp/aliases new file mode 100644 index 000000000..ad7ccf7ad --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lldp/aliases @@ -0,0 +1 @@ +unsupported diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lldp/defaults/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lldp/defaults/main.yaml new file mode 100644 index 000000000..164afead2 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lldp/defaults/main.yaml @@ -0,0 +1,3 @@ +--- +testcase: "[^_].*" +test_items: [] diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lldp/meta/main.yml b/ansible_collections/community/network/tests/integration/targets/ce_lldp/meta/main.yml new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lldp/meta/main.yml @@ -0,0 +1 @@ + diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lldp/tasks/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lldp/tasks/main.yaml new file mode 100644 index 000000000..e06ccf174 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lldp/tasks/main.yaml @@ -0,0 +1,7 @@ +--- +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- { include: netconf.yaml, tags: ['netconf'] } diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lldp/tasks/netconf.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lldp/tasks/netconf.yaml new file mode 100644 index 000000000..73b91adfa --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lldp/tasks/netconf.yaml @@ -0,0 +1,17 @@ +--- +- name: collect all netconf test cases + find: + paths: "{{ role_path }}/tests/netconf" + patterns: "{{ testcase }}.yaml" + use_regex: true + connection: local + register: test_cases + +- name: set test_items + set_fact: test_items="{{ test_cases.files | map(attribute='path') | list }}" + +- name: run test case (connection=netconf) + include: "{{ test_case_to_run }} ansible_connection=netconf" + with_items: "{{ test_items }}" + loop_control: + loop_var: test_case_to_run diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lldp/tests/netconf/absent.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lldp/tests/netconf/absent.yaml new file mode 100644 index 000000000..1a1489067 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lldp/tests/netconf/absent.yaml @@ -0,0 +1,108 @@ +--- +- debug: + msg: "START ce_lldp absent integration tests on connection={{ ansible_connection }}" + +- block: + + - name: present the provided configuration befor absent + ce_lldp: + lldpenable: enabled + mdnstatus: rxOnly + interval: 35 + hold_multiplier: 5 + restart_delay: 3 + transmit_delay: 5 + notification_interval: 6 + fast_count: 5 + mdn_notification_interval: 10.1.1.1 + management_address: 10.10.10.1 + bind_name: vlanif100 + register: result + + - name: change ansible_connection to network_cli + set_fact: + ansible_connection: network_cli + + - name: display lldp + ce_command: + commands: + - display current-configuration | include lldp + register: result_display + + - name: change ansible_connection to netconf + set_fact: + ansible_connection: netconf + +# There should be some configuration(LLDP) on host befor absent + - name: Assert the configuration is reflected on host + assert: + that: + - "'lldp enable' in result_display.stdout[0]" + - "'undo lldp mdn disable' in result_display.stdout[0]" + - "'lldp transmit interval 35' in result_display.stdout[0]" + - "'lldp transmit multiplier 5' in result_display.stdout[0]" + - "'lldp restart 3' in result_display.stdout[0]" + - "'lldp transmit delay 5' in result_display.stdout[0]" + - "'lldp fast-count 5' in result_display.stdout[0]" + - "'lldp management-address 10.10.10.1' in result_display.stdout[0]" + - "'lldp mdn trap-interval 6' in result_display.stdout[0]" + - "'lldp trap-interval 6' in result_display.stdout[0]" + - "'lldp management-address bind interface vlanif100' in result_display.stdout[0]" + + - name: absent the provided configuration with the exisiting running configuration + ce_lldp: &absent + lldpenable: enabled + mdnstatus: rxOnly + interval: 35 + hold_multiplier: 5 + restart_delay: 3 + transmit_delay: 5 + notification_interval: 6 + fast_count: 5 + mdn_notification_interval: 10.1.1.1 + management_address: 10.10.10.1 + bind_name: vlanif100 + state: absent + register: result + + - name: change ansible_connection to network_cli + set_fact: + ansible_connection: network_cli + + - name: display lldp + ce_command: + commands: + - display current-configuration | include lldp + register: result_display + + - name: change ansible_connection to netconf + set_fact: + ansible_connection: netconf + + - name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + - "'lldp enable' not in result_display.stdout[0]" + - "'undo lldp mdn disable' not in result_display.stdout[0]" + - "'lldp transmit interval 35' not in result_display.stdout[0]" + - "'lldp transmit multiplier 5' not in result_display.stdout[0]" + - "'lldp restart 3' not in result_display.stdout[0]" + - "'lldp transmit delay 5' not in result_display.stdout[0]" + - "'lldp fast-count 5' not in result_display.stdout[0]" + - "'lldp management-address 10.10.10.1' not in result_display.stdout[0]" + - "'lldp mdn trap-interval 6' not in result_display.stdout[0]" + - "'lldp trap-interval 6' not in result_display.stdout[0]" + - "'lldp management-address bind interface vlanif100' not in result_display.stdout[0]" + + - name: Merge the provided configuration with the existing running configuration (IDEMPOTENT) + ce_lldp: *absent + register: result + + - name: Assert that the previous task was idempotent + assert: + that: + - "result['changed'] == false" + +- debug: + msg: "END ce_lldp absent integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lldp/tests/netconf/clean.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lldp/tests/netconf/clean.yaml new file mode 100644 index 000000000..8e12f61ea --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lldp/tests/netconf/clean.yaml @@ -0,0 +1,20 @@ +--- +- debug: + msg: "Start ce_lldp deleted remove interface config ansible_connection={{ ansible_connection }}" + +- name: change ansible_connection to network_cli + set_fact: + ansible_connection: network_cli +# After the global LLDP function is disabled, all LLDP configuration restore defaults except the LLDP alarm function. +- name: display lldp + ce_command: + commands: + - undo lldp enable + - lldp mdn disable + +- name: change ansible_connection to netconf + set_fact: + ansible_connection: netconf + +- debug: + msg: "End ce_lldp deleted remove interface config ansible_connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lldp/tests/netconf/present.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lldp/tests/netconf/present.yaml new file mode 100644 index 000000000..f523d32dd --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lldp/tests/netconf/present.yaml @@ -0,0 +1,66 @@ +--- +- debug: + msg: "START ce_lldp merged integration tests on connection={{ ansible_connection }}" + +- block: + + - include_tasks: cleanup.yaml + + - name: Merge the provided configuration with the exisiting running configuration + ce_lldp: &merged + lldpenable: enabled + mdnstatus: rxOnly + interval: 35 + hold_multiplier: 5 + restart_delay: 3 + transmit_delay: 5 + notification_interval: 6 + fast_count: 5 + mdn_notification_interval: 10.1.1.1 + management_address: 10.10.10.1 + bind_name: vlanif100 + register: result + + - name: change ansible_connection to network_cli + set_fact: + ansible_connection: network_cli + + - name: display lldp + ce_command: + commands: + - display current-configuration | include lldp + register: result_display + + - name: change ansible_connection to netconf + set_fact: + ansible_connection: netconf + + - name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + - "'lldp enable' in result_display.stdout[0]" + - "'undo lldp mdn disable' in result_display.stdout[0]" + - "'lldp transmit interval 35' in result_display.stdout[0]" + - "'lldp transmit multiplier 5' in result_display.stdout[0]" + - "'lldp restart 3' in result_display.stdout[0]" + - "'lldp transmit delay 5' in result_display.stdout[0]" + - "'lldp fast-count 5' in result_display.stdout[0]" + - "'lldp management-address 10.10.10.1' in result_display.stdout[0]" + - "'lldp mdn trap-interval 6' in result_display.stdout[0]" + - "'lldp trap-interval 6' in result_display.stdout[0]" + - "'lldp management-address bind interface vlanif100' in result_display.stdout[0]" + + - name: Merge the provided configuration with the existing running configuration (IDEMPOTENT) + ce_lldp: *merged + register: result + + - name: Assert that the previous task was idempotent + assert: + that: + - "result['changed'] == false" + + - include_tasks: cleanup.yaml + +- debug: + msg: "END ce_lldp merged integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/aliases b/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/aliases new file mode 100644 index 000000000..ad7ccf7ad --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/aliases @@ -0,0 +1 @@ +unsupported diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/defaults/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/defaults/main.yaml new file mode 100644 index 000000000..164afead2 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/defaults/main.yaml @@ -0,0 +1,3 @@ +--- +testcase: "[^_].*" +test_items: [] diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/meta/main.yml b/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/meta/main.yml new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/meta/main.yml @@ -0,0 +1 @@ + diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/tasks/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/tasks/main.yaml new file mode 100644 index 000000000..e06ccf174 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/tasks/main.yaml @@ -0,0 +1,7 @@ +--- +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- { include: netconf.yaml, tags: ['netconf'] } diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/tasks/netconf.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/tasks/netconf.yaml new file mode 100644 index 000000000..73b91adfa --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/tasks/netconf.yaml @@ -0,0 +1,17 @@ +--- +- name: collect all netconf test cases + find: + paths: "{{ role_path }}/tests/netconf" + patterns: "{{ testcase }}.yaml" + use_regex: true + connection: local + register: test_cases + +- name: set test_items + set_fact: test_items="{{ test_cases.files | map(attribute='path') | list }}" + +- name: run test case (connection=netconf) + include: "{{ test_case_to_run }} ansible_connection=netconf" + with_items: "{{ test_items }}" + loop_control: + loop_var: test_case_to_run diff --git a/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/tests/netconf/lldp_interface.yaml b/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/tests/netconf/lldp_interface.yaml new file mode 100644 index 000000000..d5551a84f --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_lldp_interface/tests/netconf/lldp_interface.yaml @@ -0,0 +1,155 @@ +--- +- debug: + msg: "START ce_lldp_interface merged integration tests on connection={{ ansible_connection }}" + +- block: + - name: Merge the provided configuration with the exisiting running configuration - basic-tlv + ce_lldp_interface: &merged1 + config: + msg_interval: 8 + ifname: 10GE 1/0/1 + admin_status: txandrx + basic_tlv: + management_addr: true + port_desc: true + system_capability: true + system_description: true + system_name: true + register: result1 + - name: Merge the provided configuration with the existing running configuration (REPEAT) + ce_lldp_interface: *merged1 + register: result2 + - name: "Netconf get operation" + ce_netconf: + rpc: get + cfg_xml: ' + + + + 10GE1/0/1 + + + + + + + + + + + + + ' + register: result3 + - name: Assert the configuration is reflected on host + assert: + that: + - "result1['changed'] == true" + - "result2['changed'] == false" + - "'8' in result3.endstate.result" + - "'txAndRx' in result3.endstate.result" + - "'true' in result3.endstate.result" + - "'true' in result3.endstate.result" + - "'true' in result3.endstate.result" + + - name: Merge the provided configuration with the exisiting running configuration - dot1-tlv + ce_lldp_interface: &merged2 + config: + msg_interval: 8 + ifname: 10GE 1/0/1 + dot1_tlv: + port_vlan_enable: true + port_desc: true + prot_vlan_enable: true + prot_vlan_id: 123 + vlan_name: 234 + vlan_name_enable: true + register: result1 + - name: Merge the provided configuration with the existing running configuration (REPEAT) + ce_lldp_interface: *merged2 + register: result2 + - name: "Netconf get operation" + ce_netconf: + rpc: get + cfg_xml: ' + + + + 10GE1/0/1 + + + + + + + + + + + + + + + + ' + register: result3 + - name: Assert the configuration is reflected on host + assert: + that: + - "result1['changed'] == true" + - "result2['changed'] == false" + - "'true' in result3.endstate.result" + - "'true' in result3.endstate.result" + - "'123' in result3.endstate.result" + - "'true' in result3.endstate.result" + - "'true' in result3.endstate.result" + - "'true' in result3.endstate.result" + + - name: Merge the provided configuration with the exisiting running configuration - dot3-tlv + ce_lldp_interface: &merged + config: + msg_interval: 8 + ifname: 10GE 1/0/1 + dot3_tlv: + eee: true + link_aggregation: true + mac_physic: true + max_frame_size: true + register: result1 + - name: Merge the provided configuration with the existing running configuration (REPEAT) + ce_lldp_interface: *merged + register: result2 + - name: "Netconf get operation" + ce_netconf: + rpc: get + cfg_xml: ' + + + + 10GE1/0/1 + + + + + + + + + + + + + + ' + register: result3 + - name: Assert the configuration is reflected on host + assert: + that: + - "result1['changed'] == true" + - "result2['changed'] == false" + - "'true' in result3.endstate.result" + - "'true' in result3.endstate.result" + - "'123' in result3.endstate.result" + +- debug: + msg: "END ce_lldp_interface merged integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/aliases b/ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/aliases new file mode 100644 index 000000000..ad7ccf7ad --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/aliases @@ -0,0 +1 @@ +unsupported diff --git a/ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/defaults/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/defaults/main.yaml new file mode 100644 index 000000000..164afead2 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/defaults/main.yaml @@ -0,0 +1,3 @@ +--- +testcase: "[^_].*" +test_items: [] diff --git a/ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/tasks/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/tasks/main.yaml new file mode 100644 index 000000000..e06ccf174 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/tasks/main.yaml @@ -0,0 +1,7 @@ +--- +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- { include: netconf.yaml, tags: ['netconf'] } diff --git a/ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/tasks/netconf.yaml b/ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/tasks/netconf.yaml new file mode 100644 index 000000000..73b91adfa --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/tasks/netconf.yaml @@ -0,0 +1,17 @@ +--- +- name: collect all netconf test cases + find: + paths: "{{ role_path }}/tests/netconf" + patterns: "{{ testcase }}.yaml" + use_regex: true + connection: local + register: test_cases + +- name: set test_items + set_fact: test_items="{{ test_cases.files | map(attribute='path') | list }}" + +- name: run test case (connection=netconf) + include: "{{ test_case_to_run }} ansible_connection=netconf" + with_items: "{{ test_items }}" + loop_control: + loop_var: test_case_to_run diff --git a/ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/tests/netconf/ce_mdn_interface.yaml b/ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/tests/netconf/ce_mdn_interface.yaml new file mode 100644 index 000000000..4aec853fe --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_mdn_interface/tests/netconf/ce_mdn_interface.yaml @@ -0,0 +1,97 @@ +--- +- debug: + msg: "START ce_mdn_interface presented integration tests on connection={{ ansible_connection }}" +# set up default before test +- name: clean up default configuration with the exisiting running configuration + ce_mdn_interface: + lldpenable: disabled + mdnstatus: disabled + ifname: 10GE1/0/1 + +- name: present the provided configuration with the exisiting running configuration + ce_mdn_interface: &present + lldpenable: enabled + mdnstatus: rxOnly + ifname: 10GE1/0/1 + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get mdnInterface config by ce_netconf. + ce_netconf: &get_config + rpc: get + cfg_xml: " + + + + 10GE1/0/1 + + + + + " + register: result_xml + +- name: Get lldp enabled config by ce_netconf. + ce_netconf: &get_config_lldp + rpc: get + cfg_xml: " + + + + + + /filter>" + register: result_xml_lldp + + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_mdn_interface: *present + register: repeat + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'rxOnly' in result_xml.end_state.result" + - "'enabled' in result_xml_lldp.end_state.result" + +- name: absent the provided configuration with the exisiting running configuration + ce_mdn_interface: &absent + lldpenable: disabled + mdnstatus: disabled + ifname: 10GE1/0/1 + state: absent + register: result + + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: absent the provided configuration with the existing running configuration (REPEAT) + ce_mdn_interface: *absent + register: repeat + +- name: Get mdnInterface config by ce_netconf. + ce_netconf: *get_config + register: result_xml + +- name: Get lldp enabled config by ce_netconf. + ce_netconf: *get_config + register: result_xml_lldp + +- name: Assert that the previous task was idempotent + assert: + that: + - "result['changed'] == false" + - "'disabled' not in result_xml.end_state.result" + - "'disabled' in result_xml_lldp.end_state.result" +# after present, isis 100 should be deleted + +- debug: + msg: "END ce_mdn_interface resentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_multicast_global/aliases b/ansible_collections/community/network/tests/integration/targets/ce_multicast_global/aliases new file mode 100644 index 000000000..ad7ccf7ad --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_multicast_global/aliases @@ -0,0 +1 @@ +unsupported diff --git a/ansible_collections/community/network/tests/integration/targets/ce_multicast_global/defaults/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_multicast_global/defaults/main.yaml new file mode 100644 index 000000000..164afead2 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_multicast_global/defaults/main.yaml @@ -0,0 +1,3 @@ +--- +testcase: "[^_].*" +test_items: [] diff --git a/ansible_collections/community/network/tests/integration/targets/ce_multicast_global/tasks/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_multicast_global/tasks/main.yaml new file mode 100644 index 000000000..e06ccf174 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_multicast_global/tasks/main.yaml @@ -0,0 +1,7 @@ +--- +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- { include: netconf.yaml, tags: ['netconf'] } diff --git a/ansible_collections/community/network/tests/integration/targets/ce_multicast_global/tasks/netconf.yaml b/ansible_collections/community/network/tests/integration/targets/ce_multicast_global/tasks/netconf.yaml new file mode 100644 index 000000000..73b91adfa --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_multicast_global/tasks/netconf.yaml @@ -0,0 +1,17 @@ +--- +- name: collect all netconf test cases + find: + paths: "{{ role_path }}/tests/netconf" + patterns: "{{ testcase }}.yaml" + use_regex: true + connection: local + register: test_cases + +- name: set test_items + set_fact: test_items="{{ test_cases.files | map(attribute='path') | list }}" + +- name: run test case (connection=netconf) + include: "{{ test_case_to_run }} ansible_connection=netconf" + with_items: "{{ test_items }}" + loop_control: + loop_var: test_case_to_run diff --git a/ansible_collections/community/network/tests/integration/targets/ce_multicast_global/tests/netconf/test_ce_multicast_global.yaml b/ansible_collections/community/network/tests/integration/targets/ce_multicast_global/tests/netconf/test_ce_multicast_global.yaml new file mode 100644 index 000000000..69b1f5f26 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_multicast_global/tests/netconf/test_ce_multicast_global.yaml @@ -0,0 +1,73 @@ +--- +- debug: + msg: "START ce_multicast_global presented integration tests on connection={{ ansible_connection }}" + +- name: present the provided configuration with the exisiting running configuration + ce_multicast_global: &present + aftype: v4 + vrf: vpna + weight: 100 + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get basic config by ce_netconf. + ce_netconf: &get_config + rpc: get + cfg_xml: " + + + + + + + + + " + register: result_xml + + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_multicast_global: *present + register: repeat + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'vpna' in result_xml.end_state.result" + - "'vpna' in result_xml.end_state.result" + +- name: present the provided configuration with the exisiting running configuration + ce_multicast_global: &absent + aftype: v4 + vrf: vpna + register: result + + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_multicast_global: *absent + register: repeat + +- name: Get basic config by ce_netconf. + ce_netconf: *get_config + register: result_xml + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'vpna' not in result_xml.end_state.result" + - "'vpna' not in result_xml.end_state.result" +# after present, isis 100 should be deleted + +- debug: + msg: "END ce_multicast_global resentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/aliases b/ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/aliases new file mode 100644 index 000000000..ad7ccf7ad --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/aliases @@ -0,0 +1 @@ +unsupported diff --git a/ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/defaults/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/defaults/main.yaml new file mode 100644 index 000000000..164afead2 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/defaults/main.yaml @@ -0,0 +1,3 @@ +--- +testcase: "[^_].*" +test_items: [] diff --git a/ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/tasks/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/tasks/main.yaml new file mode 100644 index 000000000..e06ccf174 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/tasks/main.yaml @@ -0,0 +1,7 @@ +--- +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- { include: netconf.yaml, tags: ['netconf'] } diff --git a/ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/tasks/netconf.yaml b/ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/tasks/netconf.yaml new file mode 100644 index 000000000..73b91adfa --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/tasks/netconf.yaml @@ -0,0 +1,17 @@ +--- +- name: collect all netconf test cases + find: + paths: "{{ role_path }}/tests/netconf" + patterns: "{{ testcase }}.yaml" + use_regex: true + connection: local + register: test_cases + +- name: set test_items + set_fact: test_items="{{ test_cases.files | map(attribute='path') | list }}" + +- name: run test case (connection=netconf) + include: "{{ test_case_to_run }} ansible_connection=netconf" + with_items: "{{ test_items }}" + loop_control: + loop_var: test_case_to_run diff --git a/ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/tests/netconf/ce_multicast_igmp_enable.yaml b/ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/tests/netconf/ce_multicast_igmp_enable.yaml new file mode 100644 index 000000000..2a94b0a35 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_multicast_igmp_enable/tests/netconf/ce_multicast_igmp_enable.yaml @@ -0,0 +1,95 @@ +--- +- debug: + msg: "START ce_multicast_igmp_enable presented integration tests on connection={{ ansible_connection }}" +# clean up before test +- name: clean up configuration with the exisiting running configuration + ce_multicast_igmp_enable: &absent + aftype: v4 + features: vlan + vlan_id: 100 + igmp: true + version: 2 + proxy: true + + +- name: present the provided configuration with the exisiting running configuration + ce_multicast_igmp_enable: &present + aftype: v4 + features: vlan + vlan_id: 100 + igmp: true + version: 2 + proxy: true + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: Get basic config by ce_netconf. + ce_netconf: &get_config + rpc: get + cfg_xml: " + + + + + + + + + + + + + + " + register: result_xml + + +- name: present the provided configuration with the existing running configuration (IDEMPOTENT) + ce_multicast_igmp_enable: *present + register: repeat + +- name: Assert that the previous task was idempotent + assert: + that: + - "repeat.changed == false" + - "'ipv4unicast' in result_xml.end_state.result" + - "'100' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + - "'2' in result_xml.end_state.result" + - "'true' in result_xml.end_state.result" + +- name: absent the provided configuration with the exisiting running configuration + ce_multicast_igmp_enable: *absent + register: result + + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" + +- name: absent the provided configuration with the existing running configuration (REPEAT) + ce_multicast_igmp_enable: *absent + register: repeat + +- name: Get basic config by ce_netconf. + ce_netconf: *get_config + register: result_xml + +- name: Assert that the previous task was idempotent + assert: + that: + - "result['changed'] == false" + - "'ipv4unicast' not in result_xml.end_state.result" + - "'100' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" + - "'2' not in result_xml.end_state.result" + - "'true' not in result_xml.end_state.result" +# after present, isis 100 should be deleted + +- debug: + msg: "END ce_multicast_igmp_enable resentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/aliases b/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/aliases new file mode 100644 index 000000000..ad7ccf7ad --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/aliases @@ -0,0 +1 @@ +unsupported diff --git a/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/defaults/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/defaults/main.yaml new file mode 100644 index 000000000..164afead2 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/defaults/main.yaml @@ -0,0 +1,3 @@ +--- +testcase: "[^_].*" +test_items: [] diff --git a/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/tasks/main.yaml b/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/tasks/main.yaml new file mode 100644 index 000000000..e06ccf174 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/tasks/main.yaml @@ -0,0 +1,7 @@ +--- +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- { include: netconf.yaml, tags: ['netconf'] } diff --git a/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/tasks/netconf.yaml b/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/tasks/netconf.yaml new file mode 100644 index 000000000..73b91adfa --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/tasks/netconf.yaml @@ -0,0 +1,17 @@ +--- +- name: collect all netconf test cases + find: + paths: "{{ role_path }}/tests/netconf" + patterns: "{{ testcase }}.yaml" + use_regex: true + connection: local + register: test_cases + +- name: set test_items + set_fact: test_items="{{ test_cases.files | map(attribute='path') | list }}" + +- name: run test case (connection=netconf) + include: "{{ test_case_to_run }} ansible_connection=netconf" + with_items: "{{ test_items }}" + loop_control: + loop_var: test_case_to_run diff --git a/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/tests/netconf/ce_static_route_bfd.yaml b/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/tests/netconf/ce_static_route_bfd.yaml new file mode 100644 index 000000000..e333278d9 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/tests/netconf/ce_static_route_bfd.yaml @@ -0,0 +1,150 @@ +--- +- debug: + msg: "START ce_static_route_bfd presented integration tests on connection={{ ansible_connection }}" +- include_tasks: cleanup.yaml +- name: Config an ip route-static bfd 10GE1/0/1 3.3.3.3 min-rx-interval 50 min-tx-interval 50 detect-multiplier 5 + ce_static_route_bfd: &merge1 + function_flag: 'singleBFD' + nhp_interface: 10GE1/0/1 + next_hop: 3.3.3.3 + min_tx_interval: 50 + min_rx_interval: 50 + detect_multiplier: 5 + aftype: v4 + state: present + register: result1 +- name: (repeat)Config an ip route-static bfd 10GE1/0/1 3.3.3.3 min-rx-interval 50 min-tx-interval 50 detect-multiplier 5 + ce_static_route_bfd: + <<: *merge1 + register: result2 + +- name: Assert the configuration is reflected on host + assert: + that: + - "result1['changed'] == true" + - "result2['changed'] == false" + + +# ip route-static bfd [ interface-type interface-number | vpn-instance vpn-instance-name ] nexthop-address +- name: ip route-static bfd 10GE1/0/1 3.3.3.4 + ce_static_route_bfd: &merge2 + function_flag: 'singleBFD' + nhp_interface: 10GE1/0/1 + next_hop: 3.3.3.4 + aftype: v4 + register: result1 +- name: (repeat)ip route-static bfd 10GE1/0/1 3.3.3.4 + ce_static_route_bfd: + <<: *merge2 + register: result2 +- name: Assert the configuration is reflected on host + assert: + that: + - "result1['changed'] == true" + - "result2['changed'] == false" +#ip route-static default-bfd { min-rx-interval {min-rx-interval} | min-tx-interval {min-tx-interval} | detect-multiplier {multiplier}} +- name: Config an ip route-static default-bfd min-rx-interval 50 min-tx-interval 50 detect-multiplier 6 + ce_static_route_bfd: &merge3 + function_flag: 'globalBFD' + min_tx_interval: 50 + min_rx_interval: 50 + detect_multiplier: 6 + aftype: v4 + state: present + register: result1 +- name: (repeat)Config an ip route-static default-bfd min-rx-interval 50 min-tx-interval 50 detect-multiplier 6 + ce_static_route_bfd: + <<: *merge3 + register: result2 +- name: Assert the configuration is reflected on host + assert: + that: + - "result1['changed'] == true" + - "result2['changed'] == false" + +- name: undo ip route-static default-bfd + ce_static_route_bfd: &merge4 + function_flag: 'globalBFD' + aftype: v4 + state: absent + commands: 'sys,undo ip route-static default-bfd,commit' + register: result1 +- name: (repeat)undo ip route-static default-bfd + ce_static_route_bfd: + <<: *merge4 + register: result2 +- name: Assert the configuration is reflected on host + assert: + that: + - "result1['changed'] == true" + - "result2['changed'] == false" + +- name: Config an ipv4 static route 2.2.2.0/24 2.2.2.1 preference 1 tag 2 description test for staticBFD + ce_static_route_bfd: &merge5 + function_flag: 'staticBFD' + prefix: 2.2.2.2 + mask: 24 + next_hop: 2.2.2.1 + tag: 2 + description: test + pref: 1 + aftype: v4 + bfd_session_name: btoa + state: present + register: result1 +- name: (repeat) Config an ipv4 static route 2.2.2.0/24 2.2.2.1 preference 1 tag 2 description test for staticBFD + ce_static_route_bfd: + <<: *merge5 + register: result2 +- name: Assert the configuration is reflected on host + assert: + that: + - "result1['changed'] == true" + - "result2['changed'] == false" + +- name: Get lacp config by ce_netconf. + ce_netconf: + rpc: get + cfg_xml: " + + + + + + + + + + + + + + + + + + + " + register: result_present + +- name: Assert that the previous task was idempotent + assert: + that: + - "'v4' == result_present.end_state.result" + - "'10GE1/0/1' == result_present.end_state.result" + - "'Fast' == result_present.end_state.result" + - "'__publiv__' == result_present.end_state.result" + - "'Prority' == result_present.end_state.result" + - "'2.2.2.1' == result_present.end_state.result" + - "'2.2.2.2' == result_present.end_state.result" + - "'12' in result_present.end_state.result" + - "'true' in result_present.end_state.result" + - "'true' in result_present.end_state.result" + - "'true' in result_present.end_state.result" + - "'true' in result_present.end_state.result" + - "'true' in result_present.end_state.result" + - "'1111-2222-3333' in result_present.end_state.result" + - "'123' in result_present.end_state.result" +- include_tasks: cleanup.yaml +- debug: + msg: "END ce_static_route_bfd presentd integration tests on connection={{ ansible_connection }}" diff --git a/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/tests/netconf/cleanup.yaml b/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/tests/netconf/cleanup.yaml new file mode 100644 index 000000000..10ad3e5c1 --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/ce_static_route_bfd/tests/netconf/cleanup.yaml @@ -0,0 +1,31 @@ +--- +- name: Merge the provided configuration with the exisiting running configuration + ce_static_route_bfd: + function_flag: 'singleBFD' + nhp_interface: 10GE1/0/1 + next_hop: 3.3.3.3 + min_tx_interval: 50 + min_rx_interval: 50 + detect_multiplier: 5 + aftype: v4 + state: absent + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" +- name: ip route-static bfd 10GE1/0/1 3.3.3.4 + ce_static_route_bfd: &merge + function_flag: 'globalBFD' + min_tx_interval: 50 + min_rx_interval: 50 + detect_multiplier: 6 + aftype: v4 + state: absent + register: result + +- name: Assert the configuration is reflected on host + assert: + that: + - "result['changed'] == true" diff --git a/ansible_collections/community/network/tests/integration/targets/cnos_backup/README.md b/ansible_collections/community/network/tests/integration/targets/cnos_backup/README.md new file mode 100644 index 000000000..9b3c7cd8f --- /dev/null +++ b/ansible_collections/community/network/tests/integration/targets/cnos_backup/README.md @@ -0,0 +1,115 @@ +# Ansible Role: cnos_backup_sample - Saving the switch configuration to a remote server +--- + + +This role is an example of using the *cnos_backup.py* Lenovo module in the context of CNOS switch configuration. This module allows you to work with switch configurations. It provides a way to back up the running or startup configurations of a switch to a remote server. This is achieved by periodically saving a copy of the startup or running configuration of the network device to a remote server using FTP, SFTP, TFTP, or SCP. + +The results of the operation can be viewed in *results* directory. + +For more details, see [Lenovo modules for Ansible: cnos_backup](http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_backup.html&cp=0_3_1_0_4_4). + + +## Requirements +--- + + +- Ansible version 2.2 or later ([Ansible installation documentation](http://docs.ansible.com/ansible/intro_installation.html)) +- Lenovo switches running CNOS version 10.2.1.0 or later +- an SSH connection to the Lenovo switch (SSH must be enabled on the network device) + + +## Role Variables +--- + + +Available variables are listed below, along with description. + +The following are mandatory inventory variables: + +Variable | Description +--- | --- +`ansible_connection` | Has to be `network_cli` +`ansible_network_os` | Has to be `cnos` +`ansible_ssh_user` | Specifies the username used to log into the switch +`ansible_ssh_pass` | Specifies the password used to log into the switch +`enablePassword` | Configures the password used to enter Global Configuration command mode on the switch (this is an optional parameter) +`hostname` | Searches the hosts file at */etc/ansible/hosts* and identifies the IP address of the switch on which the role is going to be applied +`deviceType` | Specifies the type of device from where the configuration will be backed up (**g8272_cnos** - G8272, **g8296_cnos** - G8296, **g8332_cnos** - G8332, **NE10032** - NE10032, **NE1072T** - NE1072T, **NE1032** - NE1032, **NE1032T** - NE1032T, **NE2572** - NE2572, **NE0152T** - NE0152T) + +The values of the variables used need to be modified to fit the specific scenario in which you are deploying the solution. To change the values of the variables, you need to visits the *vars* directory of each role and edit the *main.yml* file located there. The values stored in this file will be used by Ansible when the template is executed. + +The syntax of *main.yml* file for variables is the following: + +``` +