34 lines · 1.1 KB · Rust
RawDownload
use gix_glob::{Pattern, pattern::Mode}; #[test]fn display() {    fn pat(text: &str, mode: Mode) -> String {        Pattern {            text: text.into(),            mode,            first_wildcard_pos: None,        }        .to_string()    }    assert_eq!(pat("a", Mode::ABSOLUTE), "/a");    assert_eq!(pat("a", Mode::MUST_BE_DIR), "a/");    assert_eq!(pat("a", Mode::NEGATIVE), "!a");    assert_eq!(pat("a", Mode::ABSOLUTE | Mode::NEGATIVE | Mode::MUST_BE_DIR), "!/a/");} #[test]fn wildcard_detection_distinguishes_escapes_from_wildcard_operators() {    for text in ["*", "?", "[a]", r"\*"] {        let pattern = Pattern::from_bytes_without_negation(text.as_bytes()).expect("non-empty pattern");        assert!(pattern.has_wildcard(), "{text:?} contains a wildcard operator");    }    for text in ["literal", r"literal\escape"] {        let pattern = Pattern::from_bytes_without_negation(text.as_bytes()).expect("non-empty pattern");        assert!(            !pattern.has_wildcard(),            "{text:?} contains no wildcard operator even if it contains an escape"        );    }} mod matching;

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t