aboutsummaryrefslogtreecommitdiffstats
path: root/test
AgeCommit message (Collapse)AuthorFilesLines
2018-12-04vcl: test refactor and improvementsFlorin Coras1-264/+81
Change-Id: I92f415bf253d6e051ec9d94ebeb98f081b2a0293 Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-12-02IPSEC-AH: anti-replay testingNeale Ranns4-30/+111
Change-Id: Ia5d45db73e4bdb32214ed4f365d5eec8e28115f3 Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-12-02vppinfra: c11 safe string functionsSteven1-0/+41
Add memcmp_s, strcmp_s, strncmp_s, strcpy_s, strncpy_s, strcat_s, strncat_s, strtok_s, strnlen_s, and strstr_s C11 safe string API. For migrating extant unsafe API, add also the corresponding macro version of each safe API, clib_memcmp, clib_strcmp, etc. In general, the benefits of the safe string APIs are to provide null pointer checks, add additional argument to specify the string length of the passed string rather than relying on the null terminated character, and src/dest overlap checking for the the string copy operations. The macro version of the API takes the same number of arguments as the unsafe API to provide easy migration. However, it does not usually provide the full aformentioned benefits. In some cases, it is necessary to move to the safe API rather than using the macro in order to avoid some unpredictable problems such as accessing memory beyond what it is intended due to the lack of the passed string length. dbarach: add a "make test" vector, and a doxygen file header cookie. Change-Id: I5cd79b8928dcf76a79bf3f0b8cbc1a8f24942f4c Signed-off-by: Steven <sluong@cisco.com> Signed-off-by: Dave Barach <dave@barachs.net>
2018-11-30Fix L2BD arp termination Test CasePaul Vinciguerra1-3/+7
============================================================================== L2BD arp termination Test Case ============================================================================== 12:02:21,850 Couldn't stat : /tmp/vpp-unittest-TestL2bdArpTerm-_h44qo/stats.sock L2BD arp term - add 5 hosts, verify arp responses OK L2BD arp term - delete 3 hosts, verify arp responses OK L2BD arp term - recreate BD1, readd 3 hosts, verify arp responses OK L2BD arp term - 2 IP4 addrs per host OK L2BD arp term - create and update 10 IP4-mac pairs OK L2BD arp/ND term - hosts with both ip4/ip6 OK L2BD ND term - Add and Del hosts, verify ND replies OK L2BD ND term - Add and update IP+mac, verify ND replies OK L2BD arp term - send garps, verify arp event reports OK L2BD arp term - send duplicate garps, verify suppression OK L2BD arp term - disable ip4 arp events,send garps, verify no events OK L2BD ND term - send NS packets verify reports OK L2BD ND term - send duplicate ns, verify suppression OK L2BD ND term - disable ip4 arp events,send ns, verify no events OK ============================================================================== TEST RESULTS: Scheduled tests: 14 Executed tests: 14 Passed tests: 14 ============================================================================== Test run was successful Change-Id: I6bb1ced11b88080ffaa845d22b0bc471c4f91683 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-30make test: print TEST= values for failed testsKlement Sekera1-4/+4
This prints the format strings required to rerun the failed test next to the failures. Change-Id: I973d8ae025f026129826356bce265b1e70086d2f Signed-off-by: Klement Sekera <ksekera@cisco.com>
2018-11-30GBP: UT more robust for endpoint timeoutNeale Ranns1-16/+17
Change-Id: Ib78c747fa3e304f7158f8182d060e11e4e778400 Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-11-30vcl/test: increase wait time before connectFlorin Coras1-10/+66
Also split tests into smaller groups Change-Id: I35809607b7a59029606bb34b90cfeffd1985fe60 Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-11-30vcl: wait for segments with segment handleFlorin Coras1-2/+2
Instead of waiting for notification from binary api. Change-Id: I5ecab857d6bcdbed62d6bb06709570c4cf6b19ea Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-11-30Tests: Fix traceback.Paul Vinciguerra3-129/+182
self.assertTrue(packet.haslayer(msg_type)) File "/usr/lib/python2.7/unittest/case.py", line 422, in assertTrue raise self.failureException(msg) AssertionError: 0 is not true * Scapy packet.haslayer() returns 1 or 0. Replace with assertEqual(packet.haslayer(), 1) to fix tracebacks. * Scapy has multiple layers called TCP/UDP Specify the module name to prevent namespace collisions. * Remove duplicate import. Change-Id: I600f9f330075cd40e1da50f8b2ceb24f645f2c20 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-29GRE: UT uses new pkt send functionsNeale Ranns1-108/+23
Change-Id: Icb1767b31421aa1e427498adc82d79307835ee1a Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-11-29make test: verify packet counters in ipsec testsKlement Sekera1-0/+16
Change-Id: Ia15b40f9d91daf3a325cb8d707b22a1dbc68d9cc Signed-off-by: Klement Sekera <ksekera@cisco.com>
2018-11-29Trivial: test_container.pyPaul Vinciguerra1-4/+4
First argument of a classmethod should be named 'cls'. Change-Id: Iff4b8d856e57c13a3404dbf6780c1d4add45b36a Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-29Trivial: test/test_ipip.pyPaul Vinciguerra1-3/+3
First argument of a method should be named 'self'. Change-Id: I7260916ce9d96108202b650dbf7ac8ce4b3aafdc Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-29GBP: l3-out subnetsNeale Ranns2-12/+360
Change-Id: Id4a20066fc5be716c61a497dfcb4d00dc1dbb28d Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-11-29gbp: Add support for flow hash profileMohsin Kazmi1-59/+158
Change-Id: Ibea87f21b3403045cc0d865903b94396fe670e79 Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2018-11-29NAT: syslog - sessions logging (VPP-1139)Matus Fabian1-1/+173
Change-Id: I6e0b7cf37c1a9ac66f8ac011db29504e57844ee9 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2018-11-29test: use smaller timeouts for vcl/ldp testsFlorin Coras1-18/+18
Change-Id: Idebd110cbf5f0ddc5d9da5a1975b5d278825d131 Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-11-29GRE: fix VRF unit-testsNeale Ranns1-3/+8
Change-Id: Ic6d011065bf062a84fdccdb1726ed3e5ed99cfbc Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-11-29VPP-1507: Added binary api to dump configured ip_punt_redirectPavel Kotucek3-23/+89
Change-Id: I790f7785e183cc9aaffd5b593617c4e12a32e20d Signed-off-by: Pavel Kotucek <pavel.kotucek@pantheon.tech>
2018-11-29make test: create virtualenv under /test/Klement Sekera11-73/+79
instead of using build-root, use /test/venv directory for virtualenv similarly, don't pollute build-root with test-built binaries Change-Id: I1e63c04037eaee718b27b34ef16c9eb0252afa53 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2018-11-29API: Add support for type aliasesOle Troan1-0/+2
Previously all types are compound. This adds support for aliases, so one can do things like: typedef u32 interface_index; or typedef u8 ip4_address[4]; Change-Id: I0455cad0123fc88acb491d2a3ea2725426bdb246 Signed-off-by: Ole Troan <ot@cisco.com> Signed-off-by: Klement Sekera <ksekera@cisco.com>
2018-11-28test/remote_test.py: Fix missing importPaul Vinciguerra1-0/+1
Change-Id: I192c33d36f43ae2df0dda509e118f2b920d561ac Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-27VPP-1508 python3 tests: use six.iteritemsPaul Vinciguerra2-6/+8
This replaces dictionary.iteritems() on Python 2 and dictionary.items() on Python 3. Change-Id: I58a3ded7d284c59e28d484b0c285aac435bfc229 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-27VPP-1508 python3 tests: .encode('hex')Paul Vinciguerra6-37/+44
Change to binascii.hexlify() for consistent bahavior. Change-Id: Ie430cdd1ffeb6510db4aa037546e42d85992093b Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-27VPP-1508 Fix for bug introduced in tests on use of repr.Paul Vinciguerra5-12/+12
This fixes the change from https://gerrit.fd.io/r/#/c/16175/ ... ====== Totals ====== Ran: 856 tests in 2123.0000 sec. - Passed: 667 - Skipped: 157 - Expected Fail: 0 - Unexpected Success: 0 - Failed: 32 Sum of execute time for each test: 1641.0832 sec. ============== Worker Balance ============== - Worker 0 (416 tests) => 0:35:06.788054 - Worker 1 (440 tests) => 0:31:13.814911 Test id Runtime (s) -------------------------------------------------------------------------------------- ----------- test.test_vcl.VCLCutThruTestCase.test_ldp_cut_thru_bi_dir_nsock 120.382 test.test_vcl.VCLThruHostStackGroupBTestCase.test_ldp_thru_host_stack_bi_dir_nsock 60.368 test.test_vcl.VCLIpv6ThruHostStackGroupBTestCase.test_ldp_thru_host_stack_bi_dir_nsock 60.356 test.test_igmp.TestIgmp.test_igmp_host 47.411 test.test_reassembly.TestFIFReassembly.test_fif6 38.561 test.test_reassembly.TestFIFReassembly.test_fif4 37.045 test.test_gbp.TestGBP.test_gbp 30.041 test.test_dhcp.TestDHCP.test_dhcp_proxy 29.339 test.test_vcl.VCLCutThruTestCase.test_ldp_cut_thru_iperf3 20.489 test.test_neighbor.ARPTestCase.test_arp 19.004 Change-Id: Ic1565f14962f157d5041230de3aeeab0b85f21e1 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-26Split non-parallel testsuitejuraj.linkes3-26/+40
Split one big suite into smaller suites when not running tests in parallel. This results in all tests being executed in one iteration. Change-Id: I0d3d357a95d9cc596b606d5911a5819e8ffdeee5 Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
2018-11-26Python3 tests: Fix asserts.Paul Vinciguerra5-13/+13
Use assert(Not)Equal() Use assert{Greater,Less}[Equal] Change-Id: I7c14570b8dce463ee13a67e9c1f10beb1a0308a8 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-26Revert "VPP-1508 python3 tests: raw_input"Ole Trøan1-24/+19
This reverts commit 72f0004ac5f6e201cbe042593d76df6f2491d743. Reason for revert: Traceback (most recent call last): File "/home/ksekera/vpp/test/test_ipsec_ah.py", line 36, in setUpClass super(TemplateIpsecAh, cls).setUpClass() File "/home/ksekera/vpp/test/template_ipsec.py", line 105, in setUpClass super(TemplateIpsec, cls).setUpClass() File "/home/ksekera/vpp/test/framework.py", line 459, in setUpClass cls.quit() File "/home/ksekera/vpp/test/framework.py", line 475, in quit six.input("When done debugging, press ENTER to kill the " AttributeError: 'module' object has no attribute 'input' Change-Id: Idf0bbfea231730b37bae5dcb4557a0f82ab1b810 Signed-off-by: Ole Troan <ot@cisco.com>
2018-11-26 test_fib.py: Remove empty methodsPaul Vinciguerra1-10/+0
Remove methods that only call super. py27 runtests: commands[5] | stestr --test-path ./test run --slowest test_fib ============================================================================== FIB Test Case ============================================================================== ============================================================================== IPv6 Test Case ============================================================================== 12:19:23,856 Couldn't stat : /tmp/vpp-unittest-TestFIB-BcLbkQ/stats.sock {1} test.test_fib.TestFIB.test_fib [0.216340s] ... ok ============================================================================== IPv4 Test Case ============================================================================== {0} test.test_ip6.TestIPv6.test_fib [5.328127s] ... ok 12:19:33,921 Couldn't stat : /tmp/vpp-unittest-TestIPv4-AoGvoK/stats.sock {1} test.test_ip4.TestIPv4.test_fib [5.071083s] ... ok ====== Totals ====== Ran: 3 tests in 34.0000 sec. - Passed: 3 - Skipped: 0 - Expected Fail: 0 - Unexpected Success: 0 - Failed: 0 Sum of execute time for each test: 10.6155 sec. ============== Worker Balance ============== - Worker 0 (1 tests) => 0:00:05.328127 - Worker 1 (2 tests) => 0:00:10.251002 Test id Runtime (s) ------------------------------- ----------- test.test_ip6.TestIPv6.test_fib 5.328 test.test_ip4.TestIPv4.test_fib 5.071 test.test_fib.TestFIB.test_fib 0.216 ______________________________________________________ summary ______________________________________________________ py27: commands succeeded congratulations :) vagrant@vpp:/vpp$ Change-Id: Ia07fe13affe2672ea2df774678312c6db8ea63fb Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-26VPP-1508 Add support for environment markers.Paul Vinciguerra2-1/+13
Add the ability to specify a specific python library version based on the interpreter/platform/etc. Change-Id: I027acdf22ad839b5cff63b319f0aa100b0f336c8 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-26VPP-1508 python3 tests locals()Paul Vinciguerra1-2/+3
Do not use locals() for string formatting. Change-Id: I2e811f479198159b4005fa69c09ad903944d8ae3 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-26Fix swapped decorators in VppTestCase.Paul Vinciguerra1-5/+5
Change-Id: I39b5a8e368f0e0b5c83203141d01f22d909b6f9d Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-26VPP-1508 python3 tests: raw_inputPaul Vinciguerra1-19/+24
Raw input does not exist in python3 use six.input. Change-Id: Ie461696ff869057bcc3969a7571602dde570f5b8 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-25VPP-1508 python3 tests: python3 repr.Paul Vinciguerra5-20/+34
Use six.reprlib. Uses repr for python 2 and reprlib for python 3. Change-Id: Ia343a492d533bd511ed57166381e10a37e452d36 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-25make test: Fix too wide subprocess exceptionsPaul Vinciguerra3-5/+5
When a command fails, CalledProcessError is raised. testing with except: masks other failures. Change-Id: I7e3a6739411cb6a4c13e96dd123aff9159213fea Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-25Fix typo in test/test_acl_plugin_conns.pyPaul Vinciguerra1-5/+5
first argument of a classmethod should be named 'cls' Change-Id: I1462be1edbfd42cbc6ad3f93d73f23b70d95e70c Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-25Fix Typo: test/test_mtu.pyPaul Vinciguerra1-3/+3
first argument of a method should be named 'self'. Change-Id: Iab84a333baba9b9dfb6ffd6da66df4da331a6b11 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-24VPP-1505 VPP-1508 Remove dep.: py_lispnetworkingPaul Vinciguerra3-11/+24
test_lisp.py No longer needs the external dependency to run. py27 runtests: commands[6] | stestr --test-path ./test run --slowest test_lisp ============================================================================== Basic LISP test ============================================================================== {0} test.test_lisp.TestLisp.test_lisp_basic_encap [0.487960s] ... ok ====== Totals ====== Ran: 1 tests in 18.0000 sec. - Passed: 1 - Skipped: 0 - Expected Fail: 0 - Unexpected Success: 0 - Failed: 0 Sum of execute time for each test: 0.4880 sec. ============== Worker Balance ============== - Worker 0 (1 tests) => 0:00:00.487960 Test id Runtime (s) --------------------------------------------- ----------- test.test_lisp.TestLisp.test_lisp_basic_encap 0.488 ______________________________________________________ summary ______________________________________________________ py27: commands succeeded congratulations :) vagrant@vpp:/vpp$ Change-Id: I35b35f8ddaed79066b3ed62fa0460c9ea83273c2 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-23make test: remove test-ext, fix test*-all targetsKlement Sekera1-5/+4
build extended binaries, vom & friends when test*-all targets are run, remove unneeded test-ext target (which is semantically same as test-debug-all) Change-Id: Id710e061fdc93e286a4ed91be6a0cdcf75a2dafd Signed-off-by: Klement Sekera <ksekera@cisco.com>
2018-11-23Fix test framework keepalivejuraj.linkes1-2/+1
The pipe used for sending keepalive messages was being added to an instance of KeepAliveReporter and then used by the class itself. This worked in the past but doesn't anymore. Fix the issue by adding the pipe to the class instead of an instance. Change-Id: If7cdca2de23ca78448e80569b155e9e29e81ff94 Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
2018-11-23Fix test logging propagationjuraj.linkes1-0/+1
When running tests with child processes the logs from child processes would propagate to root logger, potentially resulting in some logs being emitted twice. Fix this by disabling log propagation to parent loggers in child processes. Change-Id: I31eb265c2b7f7bceff627043956a67d6def3da2b Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
2018-11-23VPP-1476: L2fib failures in masterPavel Kotucek1-7/+8
Overlaping range of BDs. Change-Id: I96d2caf98b94206cd6b145961819720727f13c61 Signed-off-by: Pavel Kotucek <pavel.kotucek@pantheon.tech>
2018-11-23NAT44: improve expired sessions reuse (VPP-1503)Matus Fabian1-17/+2
Change-Id: Iab506f127136c94a641df31ded108016de26260b Signed-off-by: Matus Fabian <matfabia@cisco.com>
2018-11-22MAP: Use explicit address/prefix types in APIOle Troan4-28/+29
Change-Id: Ic751fecc4a060eedcdb9eaf5d02e1416c838fd63 Signed-off-by: Ole Troan <ot@cisco.com>
2018-11-22Revert "Fix instance method call in test/framework.py"Ole Trøan2-8/+15
This reverts commit c32023b9fd6970ed1cac1b3c7f36233b536d9968. Change-Id: Ic934d223b10028093b0262e28515bde3ae1ccb71 Signed-off-by: Ole Troan <ot@cisco.com>
2018-11-22Fix instance method call in test/framework.pyPaul Vinciguerra2-15/+8
Instance method breaking encapsulation by calling a global fn. Change-Id: Ifde2a207951143764aed75f1b191aed0bac83704 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-11-22Add RFC5424 syslog protocol support (VPP-1139)Matus Fabian3-1/+247
Syslog protocol logging transport event messages across network over UDP protocol based on RFC5426. Change-Id: Ica74b40bcc2e6d0fbd41e9bf78e76395fbabab3c Signed-off-by: Matus Fabian <matfabia@cisco.com>
2018-11-22NAT44: Apply transitory timeout on TCP RST (VPP-1494)Matus Fabian1-0/+51
RFC7857 section 2.2. Change-Id: I031af5fe379b72262e83fd8565c34fa1b772f2c8 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2018-11-20make test: Shorten VCL extended test timesDave Wallace1-73/+72
- And include them in regular CI testing Change-Id: I519fd07e1482baf6808601b3c928b825f9691c87 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2018-11-20NAT44: fix virtual fragmentation reassembly in forwarding mode (VPP-1501)Matus Fabian1-0/+26
Change-Id: Id86d8aa8753b9b2ff4c709b11e3901ba8d552918 Signed-off-by: Matus Fabian <matfabia@cisco.com>