{ lib, ipLib, system, }: let ipTests = import ./ip-tests.nix { inherit lib; ip = ipLib.ip; }; cidrTests = import ./cidr-tests.nix { inherit lib; cidr = ipLib.cidr; }; validateTests = import ./validate-tests.nix { inherit lib; validate = ipLib.validate; }; iterateTests = import ./iterate-tests.nix { inherit lib; iterate = ipLib.iterate; ip = ipLib.ip; }; allTests = ipTests ++ cidrTests ++ validateTests ++ iterateTests; in if allTests == [ ] then derivation { name = "nix-ip-utils-tests"; inherit system; builder = "/bin/sh"; args = [ "-c" "echo 'passed!' > $out" ]; } else throw "Tests failed: ${builtins.toJSON allTests}"