1 use crate::spec::Target;
4 fn report_unused_fields() {
5 let json = serde_json::from_str(
9 "data-layout": "e-m:e-i64:64-n32:64",
10 "llvm-target": "powerpc64le-elf",
11 "target-pointer-width": "64",
17 let warnings = Target::from_json(json).unwrap().1;
18 assert_eq!(warnings.warning_messages().len(), 1);
19 assert!(warnings.warning_messages().join("\n").contains("code-mode"));
23 fn report_incorrect_json_type() {
24 let json = serde_json::from_str(
28 "data-layout": "e-m:e-i64:64-n32:64",
29 "llvm-target": "powerpc64le-elf",
30 "target-pointer-width": "64",
31 "link-env-remove": "foo"
36 let warnings = Target::from_json(json).unwrap().1;
37 assert_eq!(warnings.warning_messages().len(), 1);
38 assert!(warnings.warning_messages().join("\n").contains("link-env-remove"));
42 fn no_warnings_for_valid_target() {
43 let json = serde_json::from_str(
47 "data-layout": "e-m:e-i64:64-n32:64",
48 "llvm-target": "powerpc64le-elf",
49 "target-pointer-width": "64",
50 "link-env-remove": ["foo"]
55 let warnings = Target::from_json(json).unwrap().1;
56 assert_eq!(warnings.warning_messages().len(), 0);