Skip to content

Comments

Move integration tests into a crate instead of shell scripts#3409

Open
badboy wants to merge 1 commit intomainfrom
push-qlquumloxzmw
Open

Move integration tests into a crate instead of shell scripts#3409
badboy wants to merge 1 commit intomainfrom
push-qlquumloxzmw

Conversation

@badboy
Copy link
Member

@badboy badboy commented Feb 24, 2026

This has multiple advantages:

  • Less bash
  • Less duplication of a hand-grown "testing harness"
  • It's faster!
  • It runs as part of a regular make test-rust run locally

let symbol = libc::dlsym(libc::RTLD_NEXT, name);
if symbol.is_null() {
panic!("dlsym failed to load `pthread_create` name. Nothing we can do, we abort.");
unsafe {
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is now inside an edition = 2024 crate, so it requires the extra unsafe wrapping. Otherwise the code is unchanged.

@badboy
Copy link
Member Author

badboy commented Feb 24, 2026

I have not yet vetted the new dependencies (note that they are only deps of the new test crate, they won't end up in m-c)

@badboy
Copy link
Member Author

badboy commented Feb 24, 2026

On main right now:

image

With this patch:

image

Rust tests stable: 8m 49s -> 6m 17s
Rust test - minimum version: 10m 44s -> 5m 17s

Of course times vary a bit, but 2-5minute reduction is significant.

@badboy badboy marked this pull request as ready for review February 24, 2026 13:00
@badboy badboy requested a review from a team as a code owner February 24, 2026 13:00
@badboy badboy requested review from jeddai and removed request for a team February 24, 2026 13:00
@badboy
Copy link
Member Author

badboy commented Feb 24, 2026

I have not yet vetted the new dependencies (note that they are only deps of the new test crate, they won't end up in m-c)

now vetted.

This has multiple advantages:

* Less bash
* Less duplication of a hand-grown "testing harness"
* It's faster!
* It runs as part of a regular `make test-rust` run locally
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant