aboutsummaryrefslogtreecommitdiff
path: root/tests/conditional_assignment_inheritance.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/conditional_assignment_inheritance.rs')
-rw-r--r--tests/conditional_assignment_inheritance.rs28
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(())
+}