diff --git a/subprojects/bahaghari/tests/lib/default.nix b/subprojects/bahaghari/tests/lib/default.nix index 7283d4d8..54c06c4c 100644 --- a/subprojects/bahaghari/tests/lib/default.nix +++ b/subprojects/bahaghari/tests/lib/default.nix @@ -4,6 +4,7 @@ let lib = import ../../lib { inherit pkgs; }; in { + hex = import ./hex.nix { inherit pkgs lib; }; trivial = import ./trivial { inherit pkgs lib; }; tinted-theming = import ./tinted-theming { inherit pkgs lib; }; } diff --git a/subprojects/bahaghari/tests/lib/hex.nix b/subprojects/bahaghari/tests/lib/hex.nix new file mode 100644 index 00000000..fe8d2d8a --- /dev/null +++ b/subprojects/bahaghari/tests/lib/hex.nix @@ -0,0 +1,30 @@ +{ pkgs, lib }: + +pkgs.lib.runTests { + # Even though this is basically borrowing from nixpkgs', we still to test + # them for consistency. + testConvertToHex1 = { + expr = lib.hex.toHexString 534; + expected = "216"; + }; + + testConvertToHex2 = { + expr = lib.hex.toHexString 864954; + expected = "D32BA"; + }; + + testConvertToHex3 = { + expr = lib.hex.toHexString 293454837; + expected = "117DC3F5"; + }; + + testCreateHexRange = { + expr = lib.hex.range 10 17; + expected = [ "A" "B" "C" "D" "E" "F" "10" "11" ]; + }; + + testCreateHexWithHigherStart = { + expr = lib.hex.range 49 17; + expected = [ ]; + }; +}