use std::path::{Path, PathBuf};
mod common;
fn nodes() -> PathBuf {
Path::new(env!("CARGO_MANIFEST_DIR")).join("fixtures/nodes")
}
#[test]
fn node_library() {
let output = openusd_build::configure()
.extern_library("usdShade", "crate::shade")
.build_shader_defs("tinyNodes", nodes().join("shaderDefs.usda"))
.expect("the fixture generates");
common::matches(&nodes().join("expected.rs"), &output.rust);
}
#[test]
fn unplaced_shade_refused() {
let error = openusd_build::configure()
.build_shader_defs("tinyNodes", nodes().join("shaderDefs.usda"))
.expect_err("usdShade is not placed");
assert!(
matches!(&error, openusd_build::Error::ShaderDefs { cause, .. } if cause.contains("usdShade")),
"{error}"
);
}