From 77f0a9b9a39bfe14cd9864f36bb0d4cfe44b096b Mon Sep 17 00:00:00 2001 From: JOLIMAITRE Matthieu Date: Wed, 11 Jan 2023 16:47:17 +0100 Subject: [PATCH] now ignores previous definitions of main in tests --- src/test.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/test.rs b/src/test.rs index 5264cd8..d8f7e04 100644 --- a/src/test.rs +++ b/src/test.rs @@ -1,12 +1,14 @@ use std::{fs, path::PathBuf, thread, time::Duration}; use crate::{ + config::Config, tasks::{CompileTask, GenTask, RunTask}, utils::{log_failure, log_process, log_success}, }; pub fn main(_capture: bool, test_files: Vec, includes: Vec, args: Vec) { log_process("testing"); + let main_file = Config::get_local_or_default().main_file(); let includes: Vec<_> = includes.into_iter().map(PathBuf::from).collect(); for path in test_files { let content = fs::read_to_string(&path).unwrap(); @@ -20,7 +22,7 @@ pub fn main(_capture: bool, test_files: Vec, includes: Vec, args // compile with all files let mut files = vec![generated_code]; - let mut local_includes = includes.clone(); + let mut local_includes = includes.clone(); // TODO : filter out current test : already included files.append(&mut local_includes); let mut task = CompileTask::new(files); for flag in args.clone() { @@ -58,6 +60,8 @@ int main(int argc, char** argv) {{ return 0; }} +#define main __pi_hidden_main + #include \"{path}\" void __pi_test() {{