Unify fuzzing and testing code
This commit is contained in:
parent
6c57a0dd11
commit
1e8f131eff
@ -2,7 +2,6 @@
|
||||
members = [
|
||||
"codegen-luajit",
|
||||
"codegen-luau",
|
||||
"dev-fuzz",
|
||||
"dev-test",
|
||||
"wasm-ast",
|
||||
"wasm-synth"
|
||||
|
@ -1,37 +0,0 @@
|
||||
[package]
|
||||
name = "fuzz"
|
||||
version = "0.0.0"
|
||||
edition = "2021"
|
||||
publish = false
|
||||
|
||||
[package.metadata]
|
||||
cargo-fuzz = true
|
||||
|
||||
[dependencies]
|
||||
libfuzzer-sys = "0.4"
|
||||
wasm-smith = "0.8.0"
|
||||
|
||||
[dependencies.parity-wasm]
|
||||
git = "https://github.com/paritytech/parity-wasm.git"
|
||||
features = ["multi_value", "sign_ext"]
|
||||
|
||||
[dependencies.wasm-ast]
|
||||
path = "../wasm-ast"
|
||||
|
||||
[dependencies.codegen-luajit]
|
||||
path = "../codegen-luajit"
|
||||
|
||||
[dependencies.codegen-luau]
|
||||
path = "../codegen-luau"
|
||||
|
||||
[[bin]]
|
||||
name = "luajit_translate"
|
||||
path = "fuzz_targets/luajit_translate.rs"
|
||||
test = false
|
||||
doc = false
|
||||
|
||||
[[bin]]
|
||||
name = "luau_translate"
|
||||
path = "fuzz_targets/luau_translate.rs"
|
||||
test = false
|
||||
doc = false
|
@ -2,24 +2,34 @@
|
||||
name = "dev-test"
|
||||
version = "0.1.0"
|
||||
edition = "2021"
|
||||
publish = false
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
[package.metadata]
|
||||
cargo-fuzz = true
|
||||
|
||||
[dependencies.test-generator]
|
||||
version = "0.3.0"
|
||||
|
||||
[dependencies.wast]
|
||||
version = "41.0.0"
|
||||
[dependencies]
|
||||
libfuzzer-sys = "0.4"
|
||||
wasm-smith = "0.8.0"
|
||||
wasm-ast = { path = "../wasm-ast" }
|
||||
codegen-luajit = { path = "../codegen-luajit" }
|
||||
codegen-luau = { path = "../codegen-luau" }
|
||||
|
||||
[dependencies.parity-wasm]
|
||||
git = "https://github.com/paritytech/parity-wasm.git"
|
||||
features = ["multi_value", "sign_ext"]
|
||||
|
||||
[dependencies.wasm-ast]
|
||||
path = "../wasm-ast"
|
||||
[dev-dependencies]
|
||||
test-generator = "0.3.0"
|
||||
wast = "41.0.0"
|
||||
|
||||
[dependencies.codegen-luajit]
|
||||
path = "../codegen-luajit"
|
||||
[[bin]]
|
||||
name = "luajit_translate"
|
||||
path = "fuzz_targets/luajit_translate.rs"
|
||||
test = false
|
||||
doc = false
|
||||
|
||||
[dependencies.codegen-luau]
|
||||
path = "../codegen-luau"
|
||||
[[bin]]
|
||||
name = "luau_translate"
|
||||
path = "fuzz_targets/luau_translate.rs"
|
||||
test = false
|
||||
doc = false
|
||||
|
@ -117,6 +117,8 @@ fn parse_and_validate<'a>(buffer: &'a ParseBuffer) -> Option<Wast<'a>> {
|
||||
observer.then(|| loaded)
|
||||
}
|
||||
|
||||
static TEMP_DIR: &str = env!("CARGO_TARGET_TMPDIR");
|
||||
|
||||
struct Tester<T> {
|
||||
_marker: PhantomData<T>,
|
||||
}
|
||||
@ -124,7 +126,7 @@ struct Tester<T> {
|
||||
impl<T: Target> Tester<T> {
|
||||
fn test(name: &str, source: &str) -> IResult<()> {
|
||||
if let Some(data) = Self::run_generation(source)? {
|
||||
let temp = std::env::temp_dir().join("wasm-test-".to_string() + name);
|
||||
let temp = PathBuf::from(TEMP_DIR).join("west-".to_string() + name);
|
||||
|
||||
std::fs::write(&temp, &data)?;
|
||||
Self::run_command(&temp)?;
|
Loading…
x
Reference in New Issue
Block a user