nixpkgs/pkgs/build-support/testers/testEqualArrayOrMap/default.nix
Connor Baker 4b80e5995e testers.testEqualArrayOrMap: use arrayUtilities where possible
Signed-off-by: Connor Baker <ConnorBaker01@gmail.com>
2025-06-11 17:08:13 +00:00

39 lines
809 B
Nix

{
arrayUtilities,
lib,
stdenvNoCC,
}:
lib.makeOverridable (
{
name,
valuesArray ? null,
valuesMap ? null,
expectedArray ? null,
expectedMap ? null,
script,
}:
assert lib.assertMsg (
expectedArray != null || expectedMap != null
) "testEqualArrayOrMap: at least one of 'expectedArray' or 'expectedMap' must be provided";
stdenvNoCC.mkDerivation {
__structuredAttrs = true;
strictDeps = true;
inherit name;
nativeBuildInputs = [
arrayUtilities.isDeclaredArray
./assert-equal-array.sh
arrayUtilities.isDeclaredMap
arrayUtilities.getSortedMapKeys
./assert-equal-map.sh
];
inherit valuesArray valuesMap;
inherit expectedArray expectedMap;
inherit script;
buildCommandPath = ./build-command.sh;
}
)