diff options
Diffstat (limited to 'tests/conditional_assignment_inheritance.rs')
-rw-r--r-- | tests/conditional_assignment_inheritance.rs | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/conditional_assignment_inheritance.rs b/tests/conditional_assignment_inheritance.rs new file mode 100644 index 0000000..cb7e806 --- /dev/null +++ b/tests/conditional_assignment_inheritance.rs @@ -0,0 +1,28 @@ +mod utils; + +use std::fs; +use utils::{make, R}; + +#[test] +#[cfg(feature = "full")] +fn conditional_assignment_inheritance_test() -> R { + let dir = tempfile::tempdir()?; + + let file_a = " +EGG = bug +include file_b.mk +check: +\t@echo $(EGG) +"; + fs::write(dir.path().join("Makefile"), file_a)?; + let file_b = " +EGG ?= nope +"; + fs::write(dir.path().join("file_b.mk"), file_b)?; + + let result = make(&dir)?; + assert!(result.status.success()); + assert_eq!(String::from_utf8(result.stdout)?.trim(), "bug"); + + Ok(()) +} |