2022-02-04 03:01:45 +01:00
|
|
|
use nu_command::create_default_context;
|
|
|
|
use nu_protocol::engine::StateWorkingSet;
|
2021-07-01 00:47:56 +02:00
|
|
|
use quickcheck_macros::quickcheck;
|
2020-03-04 19:58:20 +01:00
|
|
|
|
|
|
|
mod commands;
|
|
|
|
mod format_conversions;
|
2021-07-01 00:47:56 +02:00
|
|
|
|
2022-02-04 03:01:45 +01:00
|
|
|
// use nu_engine::EvaluationContext;
|
|
|
|
|
|
|
|
#[quickcheck]
|
|
|
|
fn quickcheck_parse(data: String) -> bool {
|
|
|
|
let (tokens, err) = nu_parser::lex(data.as_bytes(), 0, b"", b"", true);
|
|
|
|
let (lite_block, err2) = nu_parser::lite_parse(&tokens);
|
|
|
|
|
|
|
|
if err.is_none() && err2.is_none() {
|
|
|
|
let cwd = std::env::current_dir().expect("Could not get current working directory.");
|
|
|
|
let context = create_default_context(cwd);
|
|
|
|
{
|
|
|
|
let mut working_set = StateWorkingSet::new(&context);
|
|
|
|
working_set.add_file("quickcheck".into(), data.as_bytes());
|
|
|
|
|
2022-04-08 23:41:05 +02:00
|
|
|
let _ = nu_parser::parse_block(&mut working_set, &lite_block, false, &[], false);
|
2022-02-04 03:01:45 +01:00
|
|
|
}
|
2021-07-01 00:47:56 +02:00
|
|
|
}
|
|
|
|
true
|
|
|
|
}
|