{ lib, pkgs, ... }: let cilib = import ./../lib {inherit lib pkgs;}; in { nixtest.suites."Helpers" = { pos = __curPos; tests = let inherit (cilib) helpers; in [ { name = "appendToAfterScript nix disabled"; expected = {}; actual = helpers.appendToAfterScript [] {}; } { name = "appendToAfterScript empty"; expected = { nix.enable = true; after_script = []; }; actual = helpers.appendToAfterScript [] {nix.enable = true;}; } { name = "appendToAfterScript"; expected = { nix.enable = true; after_script = ["echo after_script" "finalize_nix_ci"]; }; actual = helpers.appendToAfterScript ["finalize_nix_ci"] { nix.enable = true; after_script = ["echo after_script"]; }; } { name = "prependToBeforeScript nix disabled"; expected = {}; actual = helpers.prependToBeforeScript [] {}; } { name = "prependToBeforeScript empty"; expected = { nix.enable = true; before_script = []; }; actual = helpers.prependToBeforeScript [] {nix.enable = true;}; } { name = "prependToBeforeScript"; expected = { nix.enable = true; before_script = ["setup_nix_ci" "echo before_script"]; }; actual = helpers.prependToBeforeScript ["setup_nix_ci"] { nix.enable = true; before_script = ["echo before_script"]; }; } { name = "toYaml"; expected = ''{"hello":"world"}''; actual = builtins.readFile (helpers.toYaml "test" {hello = "world";}); } { name = "filterAttrsRec"; expected = {world = "world";}; actual = helpers.filterAttrsRec (n: v: v != null) { hello = null; world = "world"; }; } { name = "filterJobVariables with store paths"; expected = {HELLO = "${pkgs.hello}";}; actual = helpers.filterJobVariables true { variables = { HELLO = "${pkgs.hello}"; WORLD = "world"; }; }; } { name = "filterJobVariables without store paths"; expected = {WORLD = "world";}; actual = helpers.filterJobVariables false { variables = { HELLO = "${pkgs.hello}"; WORLD = "world"; }; }; } ]; }; }