1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-06-25 19:01:16 +02:00
nix/tests/functional/lang/eval-okay-regex-match.nix
Robert Hensing 96e550efc5 Format .nix files
... with nixfmt (rfc style)
2025-01-24 17:04:02 +01:00

41 lines
847 B
Nix

with builtins;
let
matches = pat: s: match pat s != null;
splitFN = match "((.*)/)?([^/]*)\\.(nix|cc)";
in
assert matches "foobar" "foobar";
assert matches "fo*" "f";
assert !matches "fo+" "f";
assert matches "fo*" "fo";
assert matches "fo*" "foo";
assert matches "fo+" "foo";
assert matches "fo{1,2}" "foo";
assert !matches "fo{1,2}" "fooo";
assert !matches "fo*" "foobar";
assert matches "[[:space:]]+([^[:space:]]+)[[:space:]]+" " foo ";
assert !matches "[[:space:]]+([[:upper:]]+)[[:space:]]+" " foo ";
assert match "(.*)\\.nix" "foobar.nix" == [ "foobar" ];
assert match "[[:space:]]+([[:upper:]]+)[[:space:]]+" " FOO " == [ "FOO" ];
assert
splitFN "/path/to/foobar.nix" == [
"/path/to/"
"/path/to"
"foobar"
"nix"
];
assert
splitFN "foobar.cc" == [
null
null
"foobar"
"cc"
];
true