diff options
Diffstat (limited to 'pkg-config/tests')
| -rw-r--r-- | pkg-config/tests/escape.pc | 5 | ||||
| -rw-r--r-- | pkg-config/tests/framework.pc | 2 | ||||
| -rw-r--r-- | pkg-config/tests/test.rs | 19 | 
3 files changed, 25 insertions, 1 deletions
| diff --git a/pkg-config/tests/escape.pc b/pkg-config/tests/escape.pc new file mode 100644 index 0000000..701c4bf --- /dev/null +++ b/pkg-config/tests/escape.pc @@ -0,0 +1,5 @@ +Name: Escape +Version: 4.2.0 +Description: Escape utility library +Libs: -Llink\ path\ with\ spaces +Cflags: -Iinclude\ path\ with\ spaces -DA=\"escaped\ string\'\ literal\" -DB=ESCAPED\ IDENTIFIER -DFOX=🦊 diff --git a/pkg-config/tests/framework.pc b/pkg-config/tests/framework.pc index 57c0447..fec17f4 100644 --- a/pkg-config/tests/framework.pc +++ b/pkg-config/tests/framework.pc @@ -11,6 +11,6 @@ Name: Valgrind  Description: A dynamic binary instrumentation framework  Version: 3.10.0.SVN  Requires: -Libs: -F${libdir} -framework foo +Libs: -F${libdir} -framework foo -Wl,-framework,bar -Wl,-framework -Wl,baz -Wl,-framework,foobar,-framework,foobaz  Cflags: -I${includedir} diff --git a/pkg-config/tests/test.rs b/pkg-config/tests/test.rs index ee8613c..fad0fcf 100644 --- a/pkg-config/tests/test.rs +++ b/pkg-config/tests/test.rs @@ -75,11 +75,30 @@ fn output_ok() {  }  #[test] +fn escapes() { +    let _g = LOCK.lock(); +    reset(); +    let lib = find("escape").unwrap(); +    assert!(lib.include_paths.contains(&PathBuf::from("include path with spaces"))); +    assert!(lib.link_paths.contains(&PathBuf::from("link path with spaces"))); +    assert_eq!(lib.defines.get("A"), +               Some(&Some("\"escaped string' literal\"".to_owned()))); +    assert_eq!(lib.defines.get("B"), +               Some(&Some("ESCAPED IDENTIFIER".to_owned()))); +    assert_eq!(lib.defines.get("FOX"), +               Some(&Some("🦊".to_owned()))); +} + +#[test]  fn framework() {      let _g = LOCK.lock();      reset();      let lib = find("framework").unwrap();      assert!(lib.frameworks.contains(&"foo".to_string())); +    assert!(lib.frameworks.contains(&"bar".to_string())); +    assert!(lib.frameworks.contains(&"baz".to_string())); +    assert!(lib.frameworks.contains(&"foobar".to_string())); +    assert!(lib.frameworks.contains(&"foobaz".to_string()));      assert!(lib.framework_paths.contains(&PathBuf::from("/usr/lib")));  } | 
