#[path = "../common/mod.rs"]
mod common;
use common::*;
use std::{path::PathBuf, process::Command};
fn viml_escape(in_str: &str) -> String {
in_str.replace('\\', r"\\")
}
fn linebuffercrashbin() -> &'static str {
#[cfg(feature = "use_tokio")]
return "linebuffercrash";
#[cfg(feature = "use_async-std")]
return "linebuffercrash_as";
}
#[test]
fn linebuffer_crash() {
let c1 = format!(
"let jobid = jobstart([\"{}\"], {{\"rpc\": v:true}})",
viml_escape(
PathBuf::from(env!("CARGO_MANIFEST_DIR"))
.join("target")
.join("debug")
.join(linebuffercrashbin())
.to_str()
.unwrap()
)
);
let status = Command::new(nvim_path())
.args(&[
"-u",
"NONE",
"--headless",
"-c",
&c1,
])
.status()
.unwrap();
assert!(status.success());
}