From 90d26d768c6e42892879324956736848be478c4c Mon Sep 17 00:00:00 2001 From: sai chintalapudi Date: Tue, 25 Sep 2018 11:07:05 -0700 Subject: [PATCH 1/2] fix vpc_peer_link --- lib/cisco_node_utils/interface.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/cisco_node_utils/interface.rb b/lib/cisco_node_utils/interface.rb index e2dd3d95..f53351f2 100644 --- a/lib/cisco_node_utils/interface.rb +++ b/lib/cisco_node_utils/interface.rb @@ -2025,7 +2025,7 @@ def vpc_peer_link end def vpc_peer_link=(state) - return if vpc_peerlink == state + return if vpc_peer_link == state no_cmd = (state ? '' : 'no') config_set('interface', 'vpc_peer_link', name: @name, state: no_cmd) end From 84e4984d81c06737f8857da3aa08ba00d837e37e Mon Sep 17 00:00:00 2001 From: sai chintalapudi Date: Tue, 25 Sep 2018 13:55:49 -0700 Subject: [PATCH 2/2] fix interface default issues --- lib/cisco_node_utils/interface.rb | 4 ++-- tests/test_interface.rb | 12 +++++------- tests/test_interface_private_vlan.rb | 12 ++++++++++++ tests/test_interface_switchport.rb | 6 +----- 4 files changed, 20 insertions(+), 14 deletions(-) diff --git a/lib/cisco_node_utils/interface.rb b/lib/cisco_node_utils/interface.rb index f53351f2..a91b2f39 100644 --- a/lib/cisco_node_utils/interface.rb +++ b/lib/cisco_node_utils/interface.rb @@ -1085,7 +1085,7 @@ def storm_control_multicast end def storm_control_multicast=(val) - return if val == storm_control_broadcast + return if val == storm_control_multicast state = val == default_storm_control_multicast ? 'no' : '' level = val == default_storm_control_multicast ? '' : val config_set('interface', 'storm_control_multicast', @@ -1102,7 +1102,7 @@ def storm_control_unicast end def storm_control_unicast=(val) - return if val == storm_control_broadcast + return if val == storm_control_unicast state = val == default_storm_control_unicast ? 'no' : '' level = val == default_storm_control_unicast ? '' : val config_set('interface', 'storm_control_unicast', diff --git a/tests/test_interface.rb b/tests/test_interface.rb index 8966b449..83ae2d6c 100755 --- a/tests/test_interface.rb +++ b/tests/test_interface.rb @@ -346,6 +346,8 @@ def validate_get_access_vlan(inttype_h) # Validate the collection inttype_h.each_value do |v| interface = v[:interface] + next if interface.name[/vlan|loopback/] + interface.switchport_mode = :access assert_equal(v[:access_vlan], interface.access_vlan, 'Error: Access vlan value not correct') @@ -353,6 +355,7 @@ def validate_get_access_vlan(inttype_h) # get_default check assert_equal(v[:default_access_vlan], interface.default_access_vlan, 'Error: Access vlan, default, value not correct') + interface.switchport_mode = :disabled end end @@ -856,8 +859,7 @@ def test_negotiate_auto_loopback config("interface #{int}") interface = Interface.new(int) - assert_equal(interface.negotiate_auto, ref.default_value, - "Error: #{int} negotiate auto value mismatch") + assert_nil(interface.negotiate_auto) assert_raises(Cisco::UnsupportedError) do interface.negotiate_auto = true @@ -1328,8 +1330,6 @@ def interface_test_data default_shutdown: true, switchport: :disabled, default_switchport: :disabled, - access_vlan: DEFAULT_IF_ACCESS_VLAN, - default_access_vlan: DEFAULT_IF_ACCESS_VLAN, vrf_new: 'test2', default_vrf: DEFAULT_IF_VRF, } @@ -1362,8 +1362,6 @@ def interface_test_data default_shutdown: false, switchport: platform == :ios_xr ? nil : :disabled, default_switchport: platform == :ios_xr ? nil : :disabled, - access_vlan: DEFAULT_IF_ACCESS_VLAN, - default_access_vlan: DEFAULT_IF_ACCESS_VLAN, vrf_new: 'test2', default_vrf: DEFAULT_IF_VRF, } @@ -1411,12 +1409,12 @@ def test_ipv4_all_interfaces validate_interfaces_not_empty validate_get_switchport(inttype_h) validate_description(inttype_h) - validate_get_access_vlan(inttype_h) unless platform == :ios_xr validate_ipv4_address(inttype_h) validate_ipv4_proxy_arp(inttype_h) validate_ipv4_redirects(inttype_h) validate_interface_shutdown(inttype_h) validate_vrf(inttype_h) + validate_get_access_vlan(inttype_h) unless platform == :ios_xr config(*cfg) interface_ethernet_default(interfaces[1]) rescue Minitest::Assertion diff --git a/tests/test_interface_private_vlan.rb b/tests/test_interface_private_vlan.rb index f4fda2bc..a4fbec5e 100755 --- a/tests/test_interface_private_vlan.rb +++ b/tests/test_interface_private_vlan.rb @@ -88,6 +88,7 @@ def test_switchport_pvlan_host return end + i.switchport_mode = :access assert_equal(i.default_switchport_pvlan_host, i.switchport_pvlan_host) @@ -96,6 +97,7 @@ def test_switchport_pvlan_host i.switchport_pvlan_host = false refute(i.switchport_pvlan_host) + i.switchport_mode = :disabled end def test_sw_pvlan_promiscuous @@ -107,6 +109,7 @@ def test_sw_pvlan_promiscuous return end + i.switchport_mode = :access assert_equal(i.default_switchport_pvlan_promiscuous, i.switchport_pvlan_promiscuous) @@ -115,6 +118,7 @@ def test_sw_pvlan_promiscuous i.switchport_pvlan_promiscuous = false refute(i.switchport_pvlan_promiscuous) + i.switchport_mode = :disabled end def test_sw_pvlan_trunk_promiscuous @@ -126,6 +130,7 @@ def test_sw_pvlan_trunk_promiscuous return end + i.switchport_mode = :access assert_equal(i.default_switchport_pvlan_trunk_promiscuous, i.switchport_pvlan_trunk_promiscuous) @@ -134,6 +139,7 @@ def test_sw_pvlan_trunk_promiscuous i.switchport_pvlan_trunk_promiscuous = false refute(i.switchport_pvlan_trunk_promiscuous) + i.switchport_mode = :disabled end def test_sw_pvlan_trunk_secondary @@ -145,6 +151,7 @@ def test_sw_pvlan_trunk_secondary return end + i.switchport_mode = :access assert_equal(i.default_switchport_pvlan_trunk_secondary, i.switchport_pvlan_trunk_secondary) @@ -153,6 +160,7 @@ def test_sw_pvlan_trunk_secondary i.switchport_pvlan_trunk_secondary = false refute(i.switchport_pvlan_trunk_secondary) + i.switchport_mode = :disabled end # Helper to setup vlan associations @@ -309,6 +317,7 @@ def test_sw_pvlan_trunk_allowed_vlan return end + i.switchport_mode = :access default = i.default_switchport_pvlan_trunk_allowed_vlan assert_equal(default, i.switchport_pvlan_trunk_allowed_vlan) @@ -325,6 +334,7 @@ def test_sw_pvlan_trunk_allowed_vlan vlans = '500-528,530,532,534,587,590-593,597-598,600,602,604' i.switchport_pvlan_trunk_allowed_vlan = vlans assert_equal(vlans, i.switchport_pvlan_trunk_allowed_vlan) + i.switchport_mode = :disabled end def test_sw_pvlan_trunk_native_vlan @@ -336,6 +346,7 @@ def test_sw_pvlan_trunk_native_vlan return end + i.switchport_mode = :access default = i.default_switchport_pvlan_trunk_native_vlan assert_equal(default, i.switchport_pvlan_trunk_native_vlan) @@ -344,5 +355,6 @@ def test_sw_pvlan_trunk_native_vlan i.switchport_pvlan_trunk_native_vlan = default assert_equal(default, i.switchport_pvlan_trunk_native_vlan) + i.switchport_mode = :disabled end end diff --git a/tests/test_interface_switchport.rb b/tests/test_interface_switchport.rb index 05bd5f1b..e3341229 100755 --- a/tests/test_interface_switchport.rb +++ b/tests/test_interface_switchport.rb @@ -80,11 +80,7 @@ def test_access_vlan def test_access_vlan_sw_disabled interface.switchport_mode = :disabled - if platform == :ios_xr - assert_nil(interface.access_vlan) - else - assert_equal(DEFAULT_IF_ACCESS_VLAN, interface.access_vlan) - end + assert_nil(interface.access_vlan) end def test_access_vlan_sw_trunk