Print files / tests as they're processed when --debug
This is because there's no proper way to catch panics in Rust, which makes it hard to know _which_ test did cause the panic when this happen. The stack trace gives little detail about this, but we can print this information before it happens -- making it easier to identify the culprit.
This commit is contained in:
parent
eb386f4606
commit
44d72c046e
|
@ -101,6 +101,14 @@ impl telemetry::EventListener for Terminal {
|
|||
output_path.to_str().unwrap_or("").bright_blue()
|
||||
);
|
||||
}
|
||||
telemetry::Event::GeneratingUPLCFor { name, path } => {
|
||||
println!(
|
||||
"{} {}.{{{}}}",
|
||||
"...Generating Untyped Plutus Core for".bold().purple(),
|
||||
path.to_str().unwrap_or("").blue(),
|
||||
name.bright_blue(),
|
||||
);
|
||||
}
|
||||
telemetry::Event::EvaluatingFunction { results } => {
|
||||
println!("{}\n", "...Evaluating function".bold().purple());
|
||||
|
||||
|
|
|
@ -173,8 +173,9 @@ where
|
|||
match_tests,
|
||||
verbose,
|
||||
} => {
|
||||
let tests = self
|
||||
.collect_scripts(&checked_modules, |def| matches!(def, Definition::Test(..)))?;
|
||||
let tests = self.collect_scripts(&checked_modules, verbose, |def| {
|
||||
matches!(def, Definition::Test(..))
|
||||
})?;
|
||||
if !tests.is_empty() {
|
||||
self.event_listener.handle_event(Event::RunningTests);
|
||||
}
|
||||
|
@ -516,6 +517,7 @@ where
|
|||
fn collect_scripts(
|
||||
&mut self,
|
||||
checked_modules: &CheckedModules,
|
||||
verbose: bool,
|
||||
should_collect: fn(&TypedDefinition) -> bool,
|
||||
) -> Result<Vec<Script>, Error> {
|
||||
let mut programs = Vec::new();
|
||||
|
@ -594,6 +596,13 @@ where
|
|||
..
|
||||
} = func_def;
|
||||
|
||||
if verbose {
|
||||
self.event_listener.handle_event(Event::GeneratingUPLCFor {
|
||||
name: name.clone(),
|
||||
path: input_path.clone(),
|
||||
})
|
||||
}
|
||||
|
||||
let mut generator = CodeGenerator::new(
|
||||
&functions,
|
||||
// &type_aliases,
|
||||
|
|
|
@ -24,6 +24,10 @@ pub enum Event {
|
|||
GeneratingUPLC {
|
||||
output_path: PathBuf,
|
||||
},
|
||||
GeneratingUPLCFor {
|
||||
name: String,
|
||||
path: PathBuf,
|
||||
},
|
||||
EvaluatingFunction {
|
||||
results: Vec<EvalInfo>,
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue