def test_setup_an_interface(self, t):
        enable(t)

        create_vlan(t, "2999")
        create_interface_vlan(t, "2999")
        assert_interface_configuration(t, "Vlan2999", [
            "interface Vlan2999",
            " no ip address",
            "end"])

        configuring_interface_vlan(t, "2999", do="description hey ho")
        configuring_interface_vlan(t, "2999", do="ip address 1.1.1.2 255.255.255.0")
        configuring_interface_vlan(t, "2999", do="standby 1 ip 1.1.1.1")
        configuring_interface_vlan(t, "2999", do='standby 1 timers 5 15')
        configuring_interface_vlan(t, "2999", do='standby 1 priority 110')
        configuring_interface_vlan(t, "2999", do='standby 1 preempt delay minimum 60')
        configuring_interface_vlan(t, "2999", do='standby 1 authentication VLAN2999')
        configuring_interface_vlan(t, "2999", do='standby 1 track 10 decrement 50')
        configuring_interface_vlan(t, "2999", do='standby 1 track 20 decrement 50')
        configuring_interface_vlan(t, "2999", do='no ip proxy-arp')

        assert_interface_configuration(t, "Vlan2999", [
            "interface Vlan2999",
            " description hey ho",
            " ip address 1.1.1.2 255.255.255.0",
            " no ip proxy-arp",
            " standby 1 ip 1.1.1.1",
            " standby 1 timers 5 15",
            " standby 1 priority 110",
            " standby 1 preempt delay minimum 60",
            " standby 1 authentication VLAN2999",
            " standby 1 track 10 decrement 50",
            " standby 1 track 20 decrement 50",
            "end"])

        configuring_interface_vlan(t, "2999", do="ip address 2.2.2.2 255.255.255.0")
        configuring_interface_vlan(t, "2999", do="standby 1 ip 2.2.2.1")
        configuring_interface_vlan(t, "2999", do="standby 1 ip 2.2.2.3 secondary")
        configuring_interface_vlan(t, "2999", do="no standby 1 authentication")
        configuring_interface_vlan(t, "2999", do="standby 1 preempt delay minimum 42")
        configuring_interface_vlan(t, "2999", do="no standby 1 priority")
        configuring_interface_vlan(t, "2999", do="no standby 1 timers")
        configuring_interface_vlan(t, "2999", do="no standby 1 track 10")
        configuring_interface_vlan(t, "2999", do="ip proxy-arp")

        assert_interface_configuration(t, "Vlan2999", [
            "interface Vlan2999",
            " description hey ho",
            " ip address 2.2.2.2 255.255.255.0",
            " standby 1 ip 2.2.2.1",
            " standby 1 ip 2.2.2.3 secondary",
            " standby 1 preempt delay minimum 42",
            " standby 1 track 20 decrement 50",
            "end"])

        configuring_interface_vlan(t, "2999", do="no standby 1 ip 2.2.2.3")
        configuring_interface_vlan(t, "2999", do="no standby 1 preempt delay")
        configuring_interface_vlan(t, "2999", do="no standby 1 track 20")
        configuring_interface_vlan(t, "2999", do="")
        assert_interface_configuration(t, "Vlan2999", [
            "interface Vlan2999",
            " description hey ho",
            " ip address 2.2.2.2 255.255.255.0",
            " standby 1 ip 2.2.2.1",
            " standby 1 preempt",
            "end"])

        configuring_interface_vlan(t, "2999", do="no standby 1 ip 2.2.2.1")
        assert_interface_configuration(t, "Vlan2999", [
            "interface Vlan2999",
            " description hey ho",
            " ip address 2.2.2.2 255.255.255.0",
            " standby 1 preempt",
            "end"])

        configuring_interface_vlan(t, "2999", do="no standby 1")
        configuring_interface_vlan(t, "2999", do="no description")
        configuring_interface_vlan(t, "2999", do="")
        assert_interface_configuration(t, "Vlan2999", [
            "interface Vlan2999",
            " ip address 2.2.2.2 255.255.255.0",
            "end"])

        configuring(t, do="no interface vlan 2999")

        t.write("show run int vlan 2999")
        t.readln("\s*\^", regex=True)
        t.readln("% Invalid input detected at '^' marker.")
        t.readln("")
        t.read("my_switch#")

        remove_vlan(t, "2999")