Skip to content
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

testers.testBuildFailure': init #383511

Merged
merged 10 commits into from
Feb 27, 2025

Conversation

ConnorBaker
Copy link
Contributor

@ConnorBaker ConnorBaker commented Feb 19, 2025

In writing tests for #383214, I was irritated by the amount of boilerplate to do simple things like check for the presence of strings in the builder's log or assert that the builder's exit code was some value.

This PR introduces testBuildFailure', a wrapper around (and maybe eventually a replacement for) testBuildFailure.

An example of the rewrites testBuildFailure' enables, take a look at the tests in #383516 compared to the tests in #383214.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@ConnorBaker ConnorBaker self-assigned this Feb 19, 2025
@github-actions github-actions bot added 6.topic: testing Tooling for automated testing of packages and modules 8.has: documentation This PR adds or changes documentation labels Feb 19, 2025
@ConnorBaker ConnorBaker force-pushed the feat/testBuildFailurePrime branch 2 times, most recently from 9b9ca0c to dea20ca Compare February 20, 2025 18:22
@ConnorBaker ConnorBaker changed the title testBuildFailure': init testers.testBuildFailure': init Feb 20, 2025
@ConnorBaker ConnorBaker force-pushed the feat/testBuildFailurePrime branch from 8e92398 to f93587f Compare February 21, 2025 18:31
Copy link
Contributor

@philiptaron philiptaron left a comment

Choose a reason for hiding this comment

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

I like this a lot. The suggestion to make use of lib.customization.extendMkDerivation is not blocking.

@wegank wegank added 12.approved-by: package-maintainer This PR was reviewed and approved by a maintainer listed in the package 12.approvals: 1 This PR was reviewed and approved by one reputable person labels Feb 26, 2025
@ConnorBaker ConnorBaker force-pushed the feat/testBuildFailurePrime branch from 2dac118 to d2a0e52 Compare February 27, 2025 17:55
@ConnorBaker ConnorBaker merged commit ce17d93 into NixOS:master Feb 27, 2025
43 of 45 checks passed
@ConnorBaker ConnorBaker deleted the feat/testBuildFailurePrime branch February 27, 2025 18:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
6.topic: testing Tooling for automated testing of packages and modules 8.has: documentation This PR adds or changes documentation 10.rebuild-darwin: 1-10 10.rebuild-darwin: 1 10.rebuild-linux: 1-10 10.rebuild-linux: 1 12.approvals: 1 This PR was reviewed and approved by one reputable person 12.approved-by: package-maintainer This PR was reviewed and approved by a maintainer listed in the package
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants