1
+ import os
2
+
1
3
import pytest
4
+
2
5
from click .testing import CliRunner
3
- import show .main as show
4
6
5
- show_bgp_summary_v4 = """\
7
+ show_bgp_summary_v4 = """\
6
8
7
9
IPv4 Unicast Summary:
8
10
BGP router identifier 10.1.0.32, local AS number 65100 vrf-id 0
9
- BGP table version 12811
11
+ BGP table version 12811
10
12
RIB entries 12817, using 2358328 bytes of memory
11
13
Peers 24, using 502080 KiB of memory
12
14
Peer groups 4, using 256 bytes of memory
40
42
10.0.0.63 4 64016 0 0 0 0 0 never Active ARISTA16T0
41
43
"""
42
44
43
- show_bgp_summary_v6 = """\
45
+ show_bgp_summary_v6 = """\
44
46
45
47
IPv6 Unicast Summary:
46
48
BGP router identifier 10.1.0.32, local AS number 65100 vrf-id 0
47
- BGP table version 8972
49
+ BGP table version 8972
48
50
RIB entries 12817, using 2358328 bytes of memory
49
51
Peers 24, using 502080 KiB of memory
50
52
Peer groups 4, using 256 bytes of memory
77
79
fc00::76 4 64014 0 0 0 0 0 never Active ARISTA14T0
78
80
fc00::a 4 65200 6665 6671 0 0 0 2d09h38m 6402 ARISTA03T2
79
81
"""
82
+
83
+ show_error_invalid_json = """\
84
+ Usage: summary [OPTIONS]
85
+ Try 'summary --help' for help.
86
+
87
+ Error: bgp summary from bgp container not in json format
88
+ """
89
+
90
+
80
91
class TestBgpCommands (object ):
81
92
@classmethod
82
93
def setup_class (cls ):
83
94
print ("SETUP" )
84
95
import mock_tables .dbconnector
85
96
86
- @pytest .mark .parametrize ('setup_single_bgp_instance' , ['v4' ], indirect = ['setup_single_bgp_instance' ])
87
- def test_bgp_summary_v4 (self , setup_single_bgp_instance ):
88
- #reload(show)
97
+ @pytest .mark .parametrize ('setup_single_bgp_instance' ,
98
+ ['v4' ], indirect = ['setup_single_bgp_instance' ])
99
+ def test_bgp_summary_v4 (
100
+ self ,
101
+ setup_bgp_commands ,
102
+ setup_single_bgp_instance ):
103
+ show = setup_bgp_commands
89
104
runner = CliRunner ()
90
- result = runner .invoke (show .cli .commands ["ip" ].commands ["bgp" ].commands ["summary" ])
91
- print ("Result : {}" .format (result .output ))
105
+ result = runner .invoke (
106
+ show .cli .commands ["ip" ].commands ["bgp" ].commands ["summary" ], [])
107
+ print ("{}" .format (result .output ))
108
+ assert result .exit_code == 0
92
109
assert result .output == show_bgp_summary_v4
93
110
94
- @pytest .mark .parametrize ('setup_single_bgp_instance' , ['v6' ], indirect = ['setup_single_bgp_instance' ])
95
- def test_bgp_summary_v6 (self , setup_single_bgp_instance ):
111
+ @pytest .mark .parametrize ('setup_single_bgp_instance' ,
112
+ ['v6' ], indirect = ['setup_single_bgp_instance' ])
113
+ def test_bgp_summary_v6 (
114
+ self ,
115
+ setup_bgp_commands ,
116
+ setup_single_bgp_instance ):
117
+ show = setup_bgp_commands
118
+ runner = CliRunner ()
119
+ result = runner .invoke (
120
+ show .cli .commands ["ipv6" ].commands ["bgp" ].commands ["summary" ], [])
121
+ print ("{}" .format (result .output ))
122
+ assert result .exit_code == 0
123
+ assert result .output == show_bgp_summary_v6
124
+
125
+ @pytest .mark .parametrize ('setup_single_bgp_instance' ,
126
+ [' ' ], indirect = ['setup_single_bgp_instance' ])
127
+ def test_bgp_summary_error (
128
+ self ,
129
+ setup_bgp_commands ,
130
+ setup_single_bgp_instance ):
131
+ show = setup_bgp_commands
96
132
runner = CliRunner ()
97
- result = runner .invoke (show .cli .commands ["ipv6" ].commands ["bgp" ].commands ["summary" ])
98
- print ("Result : {}" .format (result .output ))
99
- assert result .output == show_bgp_summary_v6
133
+ result = runner .invoke (
134
+ show .cli .commands ["ipv6" ].commands ["bgp" ].commands ["summary" ], [])
135
+ print ("{}" .format (result .output ))
136
+ assert result .exit_code == 2
137
+ assert result .output == show_error_invalid_json
0 commit comments