Sep 14 2023
Mar 29 2023
Mar 16 2023
Feb 20 2023
I'm sorry for the delay, was focusing on fixing staff for the upcoming 13.2 release.
Feb 11 2023
Yes, please!
In the meantime, I'll keep updating this "BASE" revision.
Changes:
- Add the ability doctor IHL fields
- Add the ability to remove inner packet load
Feb 10 2023
This revision is up for a while. What do you folks think of committing some or all of these tests that don't fail or current ping?
Nothing stops us from committing the other tests (or fixing some of the current tests) along with the ping changes or separately.
- Add a missing extra white space
The output was originally taken from a branch that has code that trims these extra spaces. Let's leave those cosmetic changes for last.
Feb 9 2023
- Do not shadow opts var
- Disable net.inet.ip.process_options for RR options as well (this was discovered by randomizing the tests, as this sysctl was set by the previous tests)
Feb 7 2023
Updates:
- Use ToolsHelper.set_sysctl
- Use type hints
- Skip failing tests
- Remove tests of features not yet implemented
Feb 6 2023
@ngie Thank you for your suggestions, I'll try to implement them!
I also plan to update this file, hopefully this week, I'll remove/skip the tests for D37930 (as it hasn't landed yet), and start submitting the proposed fixes for the utility itself. I don't think all of them will be able to make it to the upcoming release, so there isn't really a time constraint, but I would like to start receiving feedback on that as well. Admittedly, having nice tests usually facilitates it!
Jan 26 2023
Jan 25 2023
Ha, very nice! I tend to prefer the f-string format (i.e., print(f" {k}: {v}"), is there a preference in style?
- In the meantime the kernel delayed object reclamation model issue is fixed, maybe adapt 80fc25025ffcb0d369fc0b6d4d272ad6fd3f53c3 ?
Committed in 20ea7f26e413 .
- An atf_get_srcdir-equivalent to eventually read files relative to the source directory, however I think the idea is to disassociate from ATF later on.
This one slipped through the cracks, thanks for reminding! Will add in a day or two.
I thought of passing it via wrapper initially, but ended up with a bit more natural way - getting it from pytest itself.
I committed an example here.
Jan 24 2023
Jan 23 2023
Sure! Once all ping tests are added, I should be more acquainted with the testing framework and propose a revision.
- An atf_get_srcdir-equivalent to eventually read files relative to the source directory, however I think the idea is to disassociate from ATF later on.
This one slipped through the cracks, thanks for reminding! Will add in a day or two.
- In the meantime the kernel delayed object reclamation model issue is fixed, maybe adapt 80fc25025ffcb0d369fc0b6d4d272ad6fd3f53c3 ?
Yep, been on my list for quite some time, I'll do the change in a day or two.
Great!
Jan 22 2023
Nice one, can probably work out-of-the box, but the scope will be a single file, due to the way of ATF<>pytest interaction is implemented.
- When debugging atf-python tests, the output could be a little bit less busy, maybe pytest_terminal_summary et al. instead of print() could be one answer.
I get the intent and I agree. Maybe you could come up with an example (or even a diff) on how do you see it?
- An atf_get_srcdir-equivalent to eventually read files relative to the source directory, however I think the idea is to disassociate from ATF later on.
This one slipped through the cracks, thanks for reminding! Will add in a day or two.
- In the meantime the kernel delayed object reclamation model issue is fixed, maybe adapt 80fc25025ffcb0d369fc0b6d4d272ad6fd3f53c3 ?
Yep, been on my list for quite some time, I'll do the change in a day or two.
Jan 17 2023
Thank you! I'll wait for @asomers comments to update the revision.
So generally, it looks good to me, and I'm fine with committing the change. @asomers: what do you think?
Jan 16 2023
Q: what's the runtime? e.g. median time reported by kyua test?
There are some tests in net/routing, doing similar SingleVnet-isolated testing, written both in python and in C.
C version takes ~120ms per test, python version takes ~330ms. My take is that the runtime under 0.5 second is fine. It may also be not easy to decrease those 330ms, as pytest does a lot of preparation work, but the runner calls it for a single test.
I suspect that importing scapy.all may contribute to the delay here. Note that kyua needs to first run list for the tests (to determine the isolation details) and then actual test and cleanup procedures.
Importing scapy.all in the top of the file will cause all 3 cases to wait till scapy init. I'd probably try to check if it's possible to use scapy subset and/or try to load it only when needed.
Here are the last iteration changes:
Updates:
- Simple one-line ping parameter expectations are subprocess.CompletedProcesses. No need to have a custom class (ExpectedProcess) that does essentially the same thing.
- Incorporate the code from D37876. The pinger utility (now a function) returns a subprocess.CompletedProcess as well. Parametrization and cleanup are next.
Jan 15 2023
Address more suggestions:
- Embed the ids explicitly via pytest.param().
Jan 14 2023
Thank you for addressing the comments!
I’d still prefer to have the ids embedded explicitly via pytest.param, but I don’t insist on doing it.
Address some of the suggestions:
Conceptually LGTM, please see some comments on the structure
This looks like a good start. I'm not a fan of the methodize stuff, though. I think it makes the tests harder to read and harder to search. Is there a way to parameterize the tests without using methodize, even if it becomes slightly more verbose?
Dec 27 2022
Dec 16 2022
Update to 8.0.0.18
Dec 3 2022
Oct 19 2022
- Update WWW: to Makefile
- Change versioning to handbook: Example 19. Using USE_GITHUB to Access a Commit Between Two Versions
- Update WWW: to Makefile
Oct 18 2022
@dereks_lifeofadishwasher.com Can we the/an existing version format that upstream uses (vX.Y.Z), optionally suffixed appropriately with relevent git tag if its 'in between versions' ?
Aug 6 2022
Move to a GH_TAGNAME from the released 8.0.0 to include some IMAP fixes
All tests pass.
Jun 6 2022
- Use USES=pytest
portfmt sort order
Yes, that works well. Thanks for the recommendation.
- update for USES=pytest