Ahmed Karic and Tobias Waldekranz
ed6f0b4dce
test: update ietf_routing .png
2024-09-10 14:59:12 +02:00
Ahmed Karic and Tobias Waldekranz
4efe89b3ea
test: update ietf_syslog topologies
2024-09-10 14:59:12 +02:00
Ahmed Karic and Mattias Walström
b963788fbc
test: update infix_dhcp test topologies
2024-09-09 19:15:21 +02:00
Mattias Walström
c456fa1c75
test: spec: Update all test specifications with relative path
2024-09-09 15:11:36 +02:00
Mattias Walström
d79d6b7f4d
test: spec: Always generate specifications with relative path
2024-09-09 15:11:36 +02:00
Mattias Walström
257c2ac3a1
test: case: Use common topologies for some tests
...
No need to have seperate topology for theese tests
2024-09-09 15:11:36 +02:00
Ahmed Karic and Mattias Walström
47bbc1431a
test: update ietf_routing test topologies
2024-09-09 11:50:57 +02:00
Ahmed Karic and Mattias Walström
77cd7c6860
test/infamy: cosmetic update in topology (.dot) files
2024-09-09 11:50:57 +02:00
Mattias Walström
e4e7dbd714
tests: Add test specification
...
Add minor changes in all testscripts, to add name and description
Add generated test specification
Add generated topology image
2024-09-06 10:18:16 +02:00
Mattias Walström
4e41663987
test: USB: Refactor general USB test
...
Better instructions means better test specification
Also add header, used when generate test specification.
2024-09-06 10:18:16 +02:00
Mattias Walström
91d6a7be85
test: USB: Add new test to test systems with two USB ports
...
Break out this from the general USB test. Test if you can
modify the ports independent of eachother.
2024-09-06 10:18:16 +02:00
Mattias Walström
b3831ebe9f
Add generation of test specification
...
The test specifcation is written in Asciidoc and is autogenerated from the content
in the test scripts.
Fonts imported from https://github.com/adobe-fonts/source-code-pro/
To generate the test script:
$ make test-spec
2024-09-06 10:18:16 +02:00
Joachim Wiberg
53df903689
test: skip container tests if target lacks support
...
Issue #597
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-09-05 07:04:58 +02:00
Joachim Wiberg
804df9373f
test: adjust hard-coded transports
...
RESTCONF, or NETCONF, may not always be available. Break out and
refactor transport detection/reachability.
NOTE: The shared code paths between wait.py and util.py:wait_boot()
have been refactored as well to reduce code duplication.
Issue #597
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-09-05 07:04:58 +02:00
Joachim Wiberg
f071dacf8b
test: add __str__ to Device class for reading device name
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-09-05 07:04:58 +02:00
Joachim Wiberg
a69f1c9272
test: autodetect available transports from .config
...
With the addition of minimal defconfigs without RESTCONF support, detect
transport when 'make test' and 'make test-sh' are called.
We set the new variable INFAMY_TRANSPORT so Infamy can detect protocol
also when in interactive test mode ('make test-sh').
Issue #597
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-09-05 07:04:58 +02:00
Joachim Wiberg
5e03b20bb2
test: minor, cleanup & pep-8 fixes
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-09-05 07:04:58 +02:00
Ahmed Karic and Mattias Walström
46ad19793b
test: refactor test environment
2024-09-03 12:13:32 +02:00
Mattias Walström
dc4c38ede6
test: Adapt tests/infamy for the new test config
...
Instead of copy factoy config to reset between tests,
use the new test-config.cfg.
Change the logic in the factory config since the default values have changed.
2024-08-30 17:40:02 +02:00
Ahmed Karic and Mattias Walström
8227f1bcde
test: enable running infix tests from external projects
...
Minor adjustments have been made to enable calling infix tests from an
external project (i.e. 'make test' target).
This essentially allows running any external test (or a group of tests)
using the infix-9pm tool.
2024-08-30 12:26:39 +02:00
Mattias Walström
b76904c0e6
Add retry if HTTP error 502 (bad gateway)
...
This is most likely caused by nginx is up but rousette
is not fully started yet.
2024-08-29 16:29:44 +02:00
Mattias Walström
2119fd239a
test:syslog: Prefix with infix-syslog model
...
Unsure why this test ever passed.
2024-08-29 16:29:44 +02:00
Joachim Wiberg
740601dde1
test: cosmetic update + shellcheck
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-08-28 19:14:47 +02:00
Joachim Wiberg
ee6d96d3ed
test: adjust location for Infamy .venv directory to ~/.infix/venv
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-08-28 19:14:47 +02:00
Joachim Wiberg
8266984c63
test: save infamy ash history across runs
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-08-28 19:14:47 +02:00
Joachim Wiberg
0ffca5aa21
test: verify remote logging with rfc5424 log format
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-08-26 20:54:49 +02:00
Joachim Wiberg
cc0321f38f
test: new test ietf_syslog/basic.py
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-08-26 20:54:49 +02:00
Joachim Wiberg
588d8189bf
test: run all CI tests with a random container name
...
Fixes #568
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-08-22 21:52:36 +02:00
Joachim Wiberg
dbcc04c3f8
test: improve robustness of container actions
...
If a container has not yet stopped/started we may for proto RESTCONF get
"invalid URI" result back for some container actions. With this change
we allow the action to be retried up to three times before passing on
the error.
In tests on Qemu (x86_64) this happens very rarely and need at most one
retry before succeeding. Verified by iterating the same basic test over
night (9000+ iterations).
Fixes #558
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-08-22 21:52:36 +02:00
Mattias Walström and Tobias Waldekranz
60e8b24d01
infamy: Refactor xpath handling between restconf and netconf implmentation
...
Previous xpath may or may not been an xpath, we still called it xpath.
Remove the obscure function get_xpath() and instead transform to a
URI in restconf.py
This fix issue #490
Signed-off-by: Mattias Walström <lazzer@gmail.com >
2024-08-16 16:50:13 +02:00
Mattias Walström
d27153ea95
Refactor randomization of transport protocol
...
Simplify the logic and add a parameter to the command line parser
instead of environment variable.
2024-06-27 15:43:06 +02:00
Mattias Walström
e3cd981830
restconf: Add workaround for bug in request 2.32.x
2024-06-27 15:43:06 +02:00
Mattias Walström
4a3559d88f
infamy: Remove duplicate function
...
Get management ip was implemented in two functions, removing one.
2024-06-27 15:43:06 +02:00
Mattias Walström
d340ba7407
infamy: Wait for NETCONF and RESTCONF
...
Also remove some code duplication.
2024-06-27 15:43:06 +02:00
Mattias Walström
b790c46dc4
restconf: Bugfix download yang modules
...
Actually check if the model is already downloaded,
before download.
2024-06-27 15:43:06 +02:00
Mattias Walström
b57353294f
test: usb: Make possible to run on physical devices
...
Virtual devices always have two USB ports, but physical, may have more
or less.
2024-06-27 15:43:06 +02:00
Mattias Walström
4cc23092b2
restconf: Implement actions
...
And refactor how it was implemented in netconf
2024-06-27 15:43:06 +02:00
Mattias Walström
2919c23fde
tests: containers: Adapt tests to work with restconf
...
Move the web port used in containers from 80 -> 91
this to not collide with nginx which is required
for restconf.
2024-06-27 15:43:06 +02:00
Mattias Walström
df7dab5951
infamy: Randomize tests for restconf/netconf
2024-06-27 15:43:06 +02:00
Mattias Walström
dd0f1610ab
Add get_current_time_with_offset to netconf/restconf
...
This allows the timezone tests to run on restconf as well
2024-06-27 15:43:06 +02:00
Mattias Walström
29f56eb384
Restconf, netconf: Implement full feature compatibility
...
Abstract functions and common functions are located in transport.py
Some quirks has been required due to how rousette works,
these functions has been added to the abstract class
Can be removed when rousette behaves as expected.
2024-06-27 15:43:06 +02:00
Mattias Walström
ba4d4caeb3
infamy: netconf: Implement deletion by xpath
...
This is the only way to delete with restconf so it it must also be
implemented in netconf. This replace the put_diff_dict function.
Also: how the xpath looks is different in restconf/netconf therefore
each protocl has a get_xpath() function as well.
2024-06-27 15:43:06 +02:00
Mattias Walström
0595628e97
infamy: Adapt for operational changes between netconf and restconf
2024-06-27 15:43:06 +02:00
Mattias Walström
095b256971
Adapt tests to be able to run them with NETCONF and RESTCONF
2024-06-27 15:43:06 +02:00
Mattias Walström
ef09c65f40
restconf: Add support to download YANG-modules
2024-06-27 15:43:06 +02:00
Joachim Wiberg
95a5f153df
statd: increase port column width for 'show bridge mdb'
...
Fixes #462
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-06-25 19:08:22 +02:00
Joachim Wiberg
4202c07926
package/curios-httpd: bump to v24.05.0
...
- Fixes to missing BusyBox tools (cat)
- Bump Buildroot to this year's LTS (2024.02)
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-06-25 19:08:22 +02:00
Joachim Wiberg
0d0d97ad3f
test: verify hostname format %h-%m in running and operational
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-06-25 17:22:36 +02:00
Joachim Wiberg
32ef120928
test: verify admin user default password in running and operational
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-06-25 17:22:36 +02:00
Joachim Wiberg
e5820e1e55
test: new method get_password() in Env
...
Allow tests to fetch expected factory default password of devices.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-06-25 17:22:36 +02:00