about summary refs log tree commit diff
path: root/src/libregex/test/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/libregex/test/mod.rs')
-rw-r--r--src/libregex/test/mod.rs20
1 files changed, 15 insertions, 5 deletions
diff --git a/src/libregex/test/mod.rs b/src/libregex/test/mod.rs
index 9386e17e920..a4c3a838a2b 100644
--- a/src/libregex/test/mod.rs
+++ b/src/libregex/test/mod.rs
@@ -12,9 +12,17 @@
 #[phase(syntax)]
 extern crate regex_macros;
 
-// Dirty hack: During stage1, test dynamic regexs. For stage2, we test
-// native regexs.
-#[cfg(stage1)]
+#[cfg(not(stage1))]
+#[path = "bench.rs"]
+mod native_bench;
+
+#[cfg(not(stage1))]
+#[path = "tests.rs"]
+mod native_tests;
+
+// Due to macro scoping rules, this definition only applies for the modules
+// defined below. Effectively, it allows us to use the same tests for both
+// native and dynamic regexes.
 macro_rules! regex(
     ($re:expr) => (
         match ::regex::Regex::new($re) {
@@ -24,6 +32,8 @@ macro_rules! regex(
     );
 )
 
-mod bench;
-mod tests;
+#[path = "bench.rs"]
+mod dynamic_bench;
+#[path = "tests.rs"]
+mod dynamic_tests;