From 46d7aaa2cbbe2c255a0de42da75a52068e90d0fd Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Fri, 5 Jun 2020 14:11:29 +0200 Subject: [PATCH] WIP --- tests/driver/cpp.rs | 2 +- tests/driver/main.rs | 24 +----------------------- tests/driver_lib/lib.rs | 22 ++++++++++++++++++++++ 3 files changed, 24 insertions(+), 24 deletions(-) diff --git a/tests/driver/cpp.rs b/tests/driver/cpp.rs index fa44ccd1d..80682eb13 100644 --- a/tests/driver/cpp.rs +++ b/tests/driver/cpp.rs @@ -17,7 +17,7 @@ impl Driver { Ok(Self { native_library_dependencies: deps.split(" ").map(String::from).collect() }) } - pub fn test(&self, testcase: &super::TestCase) -> Result<(), Box> { + pub fn test(&self, testcase: &test_driver_lib::TestCase) -> Result<(), Box> { let (syntax_node, mut diag) = parser::parse(&testcase.source); diag.current_path = testcase.path.clone(); let mut tr = typeregister::TypeRegister::builtin(); diff --git a/tests/driver/main.rs b/tests/driver/main.rs index 9c639e76e..f6dca5d8f 100644 --- a/tests/driver/main.rs +++ b/tests/driver/main.rs @@ -1,33 +1,11 @@ use std::error::Error; -pub struct TestCase { - pub source: String, - pub path: std::path::PathBuf, -} - -pub fn collect_test_cases() -> std::io::Result> { - let mut results = vec![]; - - for entry in std::fs::read_dir(format!("{}/../cases", env!("CARGO_MANIFEST_DIR")))? { - let entry = entry?; - let path = entry.path(); - if let Some(ext) = path.extension() { - if ext == "60" { - let source = std::fs::read_to_string(&path)?; - results.push(TestCase { source, path }); - } - } - } - - Ok(results) -} - mod cpp; fn main() -> Result<(), Box> { let cpp_driver = cpp::Driver::new()?; - for testcase in collect_test_cases()? { + for testcase in test_driver_lib::collect_test_cases()? { cpp_driver.test(&testcase)?; } diff --git a/tests/driver_lib/lib.rs b/tests/driver_lib/lib.rs index de5af5adb..b3f3415a6 100644 --- a/tests/driver_lib/lib.rs +++ b/tests/driver_lib/lib.rs @@ -57,3 +57,25 @@ pub fn native_library_dependencies( Ok(native_library_dependencies.trim().into()) } + +pub struct TestCase { + pub source: String, + pub path: std::path::PathBuf, +} + +pub fn collect_test_cases() -> std::io::Result> { + let mut results = vec![]; + + for entry in std::fs::read_dir(format!("{}/../cases", env!("CARGO_MANIFEST_DIR")))? { + let entry = entry?; + let path = entry.path(); + if let Some(ext) = path.extension() { + if ext == "60" { + let source = std::fs::read_to_string(&path)?; + results.push(TestCase { source, path }); + } + } + } + + Ok(results) +}