summaryrefslogtreecommitdiffstats
path: root/third_party/rust/regex-automata/tests/gen/dense/mod.rs
blob: b4365d4e19d2d1ea448b17091d5bddba44f42b84 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
use regex_automata::{Input, Match};

mod multi_pattern_v2;

#[test]
fn multi_pattern_v2() {
    use multi_pattern_v2::MULTI_PATTERN_V2 as RE;

    assert_eq!(Some(Match::must(0, 0..4)), RE.find("abcd"));
    assert_eq!(Some(Match::must(0, 2..6)), RE.find("@ abcd @"));
    assert_eq!(Some(Match::must(1, 0..6)), RE.find("@abcd@"));
    assert_eq!(Some(Match::must(0, 1..5)), RE.find("\nabcd\n"));
    assert_eq!(Some(Match::must(0, 1..5)), RE.find("\nabcd wxyz\n"));
    assert_eq!(Some(Match::must(1, 1..7)), RE.find("\n@abcd@\n"));
    assert_eq!(Some(Match::must(2, 0..6)), RE.find("@abcd@\r\n"));
    assert_eq!(Some(Match::must(1, 2..8)), RE.find("\r\n@abcd@"));
    assert_eq!(Some(Match::must(2, 2..8)), RE.find("\r\n@abcd@\r\n"));

    // Fails because we have heuristic support for Unicode word boundaries
    // enabled.
    assert!(RE.try_search(&Input::new(b"\xFF@abcd@\xFF")).is_err());
}