summaryrefslogtreecommitdiff
path: root/tests/topotests/ospf_basic_functionality/test_ospf_lan.py
AgeCommit message (Collapse)Author
2023-04-25tests: Run black on test_ospf_lan.pyDonald Sharp
frrbot unhappy. Let's bring a smile to it's life. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2023-04-25tests: Increase the dead interval to be longer for neighbor testingDonald Sharp
the ospf_basic_functionality/test_ospf_lan.py script is setting up a lan env that will have 4 ospf routers on it and shutting/no shutting interfaces with various priorities to see that ospf is properly choosing roles. I am consistently seeing the ospf_basic_functionality/test_ospf_lan.py script failing where it is saying a neighbor is not in the correct state. Upon examination of the logs we are seeing this: 2023/04/24 09:16:42 OSPF: [M7Q4P-46WDR] vty[7]@(config)# interface r0-s1-eth0 <----- This is where we no shut the interface 2023/04/24 09:16:47 OSPF: [M7Q4P-46WDR] vty[7]@> enable 2023/04/24 09:16:47 OSPF: [M7Q4P-46WDR] vty[7]@# show ip ospf neighbor all json 2023/04/24 09:16:53 OSPF: [QH9AB-Y4XMZ][EC 100663314] STARVATION: task ospf_ism_event (556af08a5b4c) ran for 6038ms (cpu time 0ms) 2023/04/24 09:16:53 OSPF: [HKQ2F-8D0MY][EC 100663315] Thread Starvation: {(thread *)0x556af19da020 arg=0x556af19c0dd0 timer r=-5.086 ospf_ase_calculate_timer() &ospf->t_ase_calc from ospfd/ospf_ase.c:635} was scheduled to pop greater than 4s ago 2023/04/24 09:16:53 OSPF: [M7Q4P-46WDR] vty[18]@> enable 2023/04/24 09:16:53 OSPF: [M7Q4P-46WDR] vty[18]@# show ip ospf neighbor all 2023/04/24 09:16:55 OSPF: [M7Q4P-46WDR] vty[7]@> enable 2023/04/24 09:16:55 OSPF: [M7Q4P-46WDR] vty[7]@# show ip ospf neighbor all json 2023/04/24 09:16:55 OSPF: [M7Q4P-46WDR] vty[7]@> enable This test is setting the dead interval to 4 seconds, seeing a 6 second delay where the os has gone to town (probably because of the high load on the system ) and not choosing the correct neighbor as the DR. OSPF when coming up and after seeing the first neighbor, goes into a waiting period before the DR is elected. If the neighbor does send it's hello packets but they are not processed before the wait timer pops because of the starvation event, then the wrong neighbor will be elected DR. Let's give this test a bit more time to decide who the DR is in case everything goes a bit south. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2023-04-07tests: replace deprecated ospf json keysMark Stapp
Replace many deprecated json keys in topotests after removing those keys from ospfd. Signed-off-by: Mark Stapp <mjs@labn.net>
2023-03-29Merge pull request #12645 from gpnaveen/ospf_error_msg_enhancementsRuss White
tests: [topojson] Update assert/error messages for ospf scripts
2023-03-26tests: [topojson] Update assert/error messagesnguggarigoud
Few assert/error messages are updated for test scripts for better debugging. Signed-off-by: nguggarigoud <nguggarigoud@vmware.com>
2023-02-09*: auto-convert to SPDX License IDsDavid Lamparter
Done with a combination of regex'ing and banging my head against a wall. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2023-01-31tests: Fix wrong tgen.stop_topology() calls which got skippedMartin Winter
Calls were missing the () and caused the stop_topology() to be skipped Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
2022-12-13tests: Cleaning up daemon param used in start_topology()Kuldeep Kashyap
Earlier daemon parameter was passed to start_topology(), which is not needed now, as new code is implemented to start feature specific daemons. Signed-off-by: Kuldeep Kashyap <kashyapk@vmware.com>
2022-04-01tests: Fix spelling of daemonsDonald Sharp
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-12-11tests: test_ospf_lan.py is looking for a certain order enforce itDonald Sharp
OSPF when converging will choose a DR / Backup DR based upon who has already come up. Irrelevant of priority. As such if under system load OSPF comes up first and elects a DR that under normal circumstances not be the elected one due to priority OSPF does not go back through and re-elect to keep the system stable in this case. Tests are experiencing this: unet> r0 show ip ospf neigh Neighbor ID Pri State Up Time Dead Time Address Interface RXmtL RqstL DBsmL 100.1.1.1 99 Full/Backup 4m14s 3.780s 10.0.1.2 r0-s1-eth0:10.0.1.1 0 0 0 100.1.1.2 0 Full/DROther 4m14s 3.848s 10.0.1.3 r0-s1-eth0:10.0.1.1 0 0 0 100.1.1.3 0 Full/DROther 4m14s 3.912s 10.0.1.4 r0-s1-eth0:10.0.1.1 0 0 0 unet> r1 show ip ospf neigh Neighbor ID Pri State Up Time Dead Time Address Interface RXmtL RqstL DBsmL 100.1.1.0 98 Full/DR 4m15s 3.011s 10.0.1.1 r1-s1-eth1:10.0.1.2 0 0 0 100.1.1.2 0 Full/DROther 4m19s 3.124s 10.0.1.3 r1-s1-eth1:10.0.1.2 0 0 0 100.1.1.3 0 Full/DROther 4m19s 3.188s 10.0.1.4 r1-s1-eth1:10.0.1.2 0 0 0 unet> r2 show ip ospf neigh Neighbor ID Pri State Up Time Dead Time Address Interface RXmtL RqstL DBsmL 100.1.1.0 98 Full/DR 4m27s 3.483s 10.0.1.1 r2-s1-eth0:10.0.1.3 0 0 0 100.1.1.1 99 Full/Backup 4m32s 3.527s 10.0.1.2 r2-s1-eth0:10.0.1.3 0 0 0 100.1.1.3 0 2-Way/DROther 4m32s 3.660s 10.0.1.4 r2-s1-eth0:10.0.1.3 0 0 0 unet> r3 show ip ospf neigh Neighbor ID Pri State Up Time Dead Time Address Interface RXmtL RqstL DBsmL 100.1.1.0 98 Full/DR 4m55s 3.786s 10.0.1.1 r3-s1-eth1:10.0.1.4 0 0 0 100.1.1.1 99 Full/Backup 4m55s 3.829s 10.0.1.2 r3-s1-eth1:10.0.1.4 0 0 0 100.1.1.2 0 2-Way/DROther 4m54s 3.897s 10.0.1.3 r3-s1-eth1:10.0.1.4 0 0 0 Modify the test to do a clear to enforce the order we are specifically looking for. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-24tests: Do not pick an ip address that overlaps with ourselvesDonald Sharp
The ospf_basic_functionality/test_ospf_lan.py creates a ethernet segment and attaches 4 routers to it and assigns ip addresses in a /24. As one of the tests it picks a new address for r0 which coincides with a ip address on r3. Then the test immediatly checks for other data. The problem is of course that if a test is `slow` enough hello's will start to be ignored from r3 to r0 and the neighbor relationships will come down. Choose an ip address that doesn't cause this issue. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-09-04tests: cleanup - remove unused importsChristian Hopps
Signed-off-by: Christian Hopps <chopps@labn.net>
2021-09-04tests: remove legacy Topo class (fixes many pylint errors)Christian Hopps
Signed-off-by: Christian Hopps <chopps@labn.net>
2021-09-04tests: micronet: adapt testsChristian Hopps
Signed-off-by: Christian Hopps <chopps@labn.net>
2021-07-28tests: Add pytest.mark.ospfd on tests missing this markDonald Sharp
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-04-09tests: More black fixupsDonald Sharp
Just another round of fixups found by running black on the code Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-03-06tests: Improve error/assert message loggingKuldeep Kashyap
1. Improved error meesage logging. 2. No functionality changes only put some meaningfull error messages. Signed-off-by: Kuldeep Kashyap <kashyapk@vmware.com>
2021-01-12tests: move redistribute function into libckishimo
Signed-off-by: ckishimo <carles.kishimoto@gmail.com>
2021-01-12tests: remove old def for redistribution in ospfckishimo
Signed-off-by: ckishimo <carles.kishimoto@gmail.com>
2021-01-12tests: add new def for redistribution in ospfckishimo
Signed-off-by: ckishimo <carles.kishimoto@gmail.com>
2020-12-17tests: unicode to frr_unicodeDonald Sharp
Let's standardize on the internal to frr unicode function. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-10-07*: reformat python fileswhitespace
We are now using black. Signed-off-by: Quentin Young <qlyoung@nvidia.com>
2020-09-18tests: Optimising a step for not true case.nguggarigoud
1. Optimising a step for not true case. 2. Fixing a timing issue in route calculation script. Signed-off-by: nguggarigoud <nguggarigoud@vmware.com>
2020-09-18tests: Adding daemon check for ospfd in common_config.pynguggarigoud
start ospfd only when ospf config is used. Signed-off-by: nguggarigoud <nguggarigoud@vmware.com>
2020-09-18tests: ospf basic functionality topojson testcases.naveen
1. Removed static sleeps. Signed-off-by: naveen <nguggarigoud@vmware.com>
2020-09-18tests: ospf_basic_functionality topojson testcases.naveen
1. Adding 18 ospf testcases to topojson. 2. Adding ospf.py library. Test suite execution time is ~18 minutes. Signed-off-by: naveen <nguggarigoud@vmware.com>