Testing framework for Nix code
Find a file
2024-12-08 21:27:18 +00:00
test add test help text 2024-12-08 21:27:18 +00:00
tix add test help text 2024-12-08 21:27:18 +00:00
.gitignore ignore build result 2024-01-03 07:37:33 +00:00
flake.lock document throws, run alejandra 2024-01-02 11:13:47 +00:00
flake.nix add test help text 2024-12-08 21:27:18 +00:00
mytest.nix use describe in docs 2024-01-02 13:55:51 +00:00
README.md rework watch command 2024-01-03 07:37:49 +00:00

Tix

Test your Nix is only ticks.

Usage

Make a test file:

{ describe, it, ... }:
describe "what I'm testing" [
    (it "can add numbers" {
        actual = 2 + 2;
        expected = 4;
    })
    (it "loves big brother" {
        actual = 2 + 2;
        expected = 5;
    })
    (it "throws a party" {
        actual = throw "a party";
        throws = true;
    })
]

Add tix as an input to your flake, and use it to build a test output.

{
    description = "My test driven flake";

    inputs = {
        tix.url = "git+https://git.tristans.cloud/tristan/tix";
    };

    outpts = {self, tix, ...}: {
        packages.x86_64-linux.test = tix.run [
            ./mytest.nix
        ];
    };
}

Then run the generated package.

nix run .#test --show-trace