summaryrefslogtreecommitdiffstats
path: root/third_party/rust/regex/tests/test_crates_regex.rs
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/regex/tests/test_crates_regex.rs')
-rw-r--r--third_party/rust/regex/tests/test_crates_regex.rs57
1 files changed, 57 insertions, 0 deletions
diff --git a/third_party/rust/regex/tests/test_crates_regex.rs b/third_party/rust/regex/tests/test_crates_regex.rs
new file mode 100644
index 0000000000..d6976831ec
--- /dev/null
+++ b/third_party/rust/regex/tests/test_crates_regex.rs
@@ -0,0 +1,57 @@
+extern crate quickcheck;
+extern crate regex;
+
+/*
+ * This test is a minimal version of <rofl_0> and <subdiff_0>
+ *
+ * Once this bug gets fixed, uncomment rofl_0 and subdiff_0
+ * (in `tests/crates_regex.rs`).
+#[test]
+fn word_boundary_backtracking_default_mismatch() {
+ use regex::internal::ExecBuilder;
+
+ let backtrack_re = ExecBuilder::new(r"\b")
+ .bounded_backtracking()
+ .build()
+ .map(|exec| exec.into_regex())
+ .map_err(|err| format!("{}", err))
+ .unwrap();
+
+ let default_re = ExecBuilder::new(r"\b")
+ .build()
+ .map(|exec| exec.into_regex())
+ .map_err(|err| format!("{}", err))
+ .unwrap();
+
+ let input = "䅅\\u{a0}";
+
+ let fi1 = backtrack_re.find_iter(input);
+ let fi2 = default_re.find_iter(input);
+ for (m1, m2) in fi1.zip(fi2) {
+ assert_eq!(m1, m2);
+ }
+}
+*/
+
+mod consistent;
+
+mod crates_regex {
+
+ macro_rules! consistent {
+ ($test_name:ident, $regex_src:expr) => {
+ #[test]
+ fn $test_name() {
+ use super::consistent::backends_are_consistent;
+
+ if option_env!("RUST_REGEX_RANDOM_TEST").is_some() {
+ match backends_are_consistent($regex_src) {
+ Ok(_) => {}
+ Err(err) => panic!("{}", err),
+ }
+ }
+ }
+ };
+ }
+
+ include!("crates_regex.rs");
+}