]> git.proxmox.com Git - mirror_frr.git/blob - tests/topotests/route_scale/test_route_scale1.py
doc: Add `show ipv6 rpf X:X::X:X` command to docs
[mirror_frr.git] / tests / topotests / route_scale / test_route_scale1.py
1 #!/usr/bin/env python
2
3 #
4 # test_route_scale1.py
5 #
6 # Copyright (c) 2021 by
7 # Nvidia, Inc.
8 # Donald Sharp
9 #
10 # Permission to use, copy, modify, and/or distribute this software
11 # for any purpose with or without fee is hereby granted, provided
12 # that the above copyright notice and this permission notice appear
13 # in all copies.
14 #
15 # THE SOFTWARE IS PROVIDED "AS IS" AND NETDEF DISCLAIMS ALL WARRANTIES
16 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
17 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NETDEF BE LIABLE FOR
18 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY
19 # DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
20 # WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
21 # ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
22 # OF THIS SOFTWARE.
23 #
24
25 """
26 test_route_scale1.py: Testing route scale
27
28 """
29 import os
30 import re
31 import sys
32 import pytest
33 import json
34 from functools import partial
35
36 # Save the Current Working Directory to find configuration files.
37 CWD = os.path.dirname(os.path.realpath(__file__))
38 sys.path.append(os.path.join(CWD, "../"))
39
40 # pylint: disable=C0413
41 # Import topogen and topotest helpers
42 from lib import topotest
43 from lib.topogen import Topogen, TopoRouter, get_topogen
44 from lib.topolog import logger
45
46 from scale_test_common import scale_build_common, scale_setup_module, route_install_helper, scale_test_memory_leak, scale_converge_protocols, scale_teardown_module
47
48
49 pytestmark = [pytest.mark.sharpd]
50
51 def build(tgen):
52 scale_build_common(tgen)
53
54 def setup_module(module):
55 scale_setup_module(module)
56
57 def teardown_module(_mod):
58 scale_teardown_module(_mod)
59
60 def test_converge_protocols():
61 scale_converge_protocols()
62
63 def test_route_install_2nh():
64 route_install_helper(1)
65
66 def test_route_install_4nh():
67 route_install_helper(2)
68
69 def test_route_install_16nh():
70 route_install_helper(4)
71
72 def test_memory_leak():
73 scale_test_memory_leak()
74
75 if __name__ == "__main__":
76 args = ["-s"] + sys.argv[1:]
77 sys.exit(pytest.main(args))