use super::*; #[test] fn match_succeeds_evaluates_to_first_branch() { Test::new() .justfile( " foo := if 'abbbc' =~ 'ab+c' { 'yes' } else { 'no' } default: echo {{ foo }} ", ) .stderr("echo yes\n") .stdout("yes\n") .run(); } #[test] fn match_fails_evaluates_to_second_branch() { Test::new() .justfile( " foo := if 'abbbc' =~ 'ab{4}c' { 'yes' } else { 'no' } default: echo {{ foo }} ", ) .stderr("echo no\n") .stdout("no\n") .run(); } #[test] fn bad_regex_fails_at_runtime() { Test::new() .justfile( " default: echo before echo {{ if '' =~ '(' { 'a' } else { 'b' } }} echo after ", ) .stderr( " echo before error: regex parse error: ( ^ error: unclosed group ", ) .stdout("before\n") .status(EXIT_FAILURE) .run(); }