-
Notifications
You must be signed in to change notification settings - Fork 392
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
make integration tests more robust #2688
Conversation
This comment was marked as outdated.
This comment was marked as outdated.
732b989
to
88ac808
Compare
88ac808
to
21fe7cd
Compare
08b5956
to
752c9df
Compare
752c9df
to
fdf1217
Compare
7910d6f
to
ff39fb8
Compare
ff39fb8
to
1139ee0
Compare
cdb67a1
to
03681b7
Compare
I want to review this one |
998cedd
to
bd14ff9
Compare
bd14ff9
to
1566446
Compare
TODO: We should merge this one at the end of the milestone (no matter if its on the bug fix window) just so we don't change tests while doing the release. @josedonizetti I'll let you take care of it (as you've requested to review and since we've spoken offline about it). Cheers! |
1566446
to
dbdae87
Compare
dbdae87
to
e67e9fc
Compare
- Add generic functions to check received events in different manners: - ExpectAllInOrder - ExpectAllEqualTo - ExpectAtLeastOneOfEach - ExpectAnyOfEach - Add waitForTraceeOutputEvents function to wait for tracee output events until buffer fills with certain number of events or timeout occurs. - Add waitforTraceeStop function to wait for tracee to stop or until timeout occurs. - Remove tester.sh concentrating all event filter tests in event_filters_test.go. - Create syscaller tool to easily generate syscalls from the command line (strictly for integration tests). It reuses the tracee events package. - Fix goroutine leaks, deadlocks and race conditions.
e67e9fc
to
f6585d2
Compare
@geyslan shouldn't integration tests binary be inside ./dist/ like all other binaries (including tracee-gpt, for example). Its a convention, I wonder if we could make the same for this binary. |
Currently the syscaller is used only for the golang integration tests that lie under |
+1, also think that if are not using it elsewhere, as it was created specifically for e2e, we should have it under |
Problem with that is now we are not "out-of-tree" building environment just because of this binary. We have just spread leftovers and artifacts to internal directories in the source tree directory (which is not what we should do IMO). Every time a new binary is created, we have to ignore that binary (if its dir is not already ignored). Every time we clean things, we need to clean the generated binary instead of the out-of-tree directory (dist). |
Fixes: #2681
Initial Checklist
Type of change
How Has This Been Tested?
make test-unit
sudo make test-integration