#![cfg_attr(feature = "pattern", feature(pattern))]
extern crate regex;
macro_rules! regex {
($re:expr) => {{
use regex::Regex;
Regex::new($re).unwrap()
}}
}
macro_rules! regex_set {
($res:expr) => {{
use regex::RegexSet;
RegexSet::new($res).unwrap()
}}
}
#[cfg(feature = "pattern")]
macro_rules! searcher_expr { ($e:expr) => ($e) }
#[cfg(not(feature = "pattern"))]
macro_rules! searcher_expr { ($e:expr) => ({}) }
mod tests;
mod tests_set;
#[test]
fn regression_many_repeat_stack_overflow() {
let re = regex!("^.{1,2500}");
assert_eq!(re.find("a"), Some((0, 1)));
}
#[test]
fn set_empty() {
use regex::{Error, RegexSet};
let err = RegexSet::new::<&[String], &String>(&[]).unwrap_err();
match err {
Error::InvalidSet => {}
err => panic!("expected Error::InvalidSet but got {:?}", err),
}
}
#[test]
fn set_one() {
use regex::{Error, RegexSet};
let err = RegexSet::new(&["foo"]).unwrap_err();
match err {
Error::InvalidSet => {}
err => panic!("expected Error::InvalidSet but got {:?}", err),
}
}