From 5ee7c726ec5212939d4c7d92ada2a201925985e2 Mon Sep 17 00:00:00 2001 From: Michael Gmelin Date: Mon, 4 Sep 2023 22:34:53 +0200 Subject: [PATCH] Add unit test for clang::is_minversion --- src/compiler/clang.rs | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/src/compiler/clang.rs b/src/compiler/clang.rs index 3d54211a63..6d6d090ce0 100644 --- a/src/compiler/clang.rs +++ b/src/compiler/clang.rs @@ -252,6 +252,36 @@ mod test { } } + #[test] + fn test_is_minversion() { + assert_eq!(Clang { + clangplusplus: false, + is_appleclang: false, + version: Some("\"Ubuntu Clang 14.0.0\"".to_string()), + }.is_minversion(14), true); + assert_eq!(Clang { + clangplusplus: false, + is_appleclang: false, + version: Some("\"Ubuntu Clang 13.0.0\"".to_string()), + }.is_minversion(14), false); + assert_eq!(Clang { + clangplusplus: false, + is_appleclang: false, + version: Some("\"FreeBSD Clang 14.0.5 (https://github.com/llvm/llvm-project.git llvmorg-14.0.5-0-gc12386ae247c)\"".to_string()), + }.is_minversion(14), true); + assert_eq!(Clang { + clangplusplus: false, + is_appleclang: false, + version: Some("\"FreeBSD Clang 13.0.0 (git@github.com:llvm/llvm-project.git llvmorg-13.0.0-0-gd7b669b3a303)\"".to_string()), + }.is_minversion(14), false); + + assert_eq!(Clang { + clangplusplus: false, + is_appleclang: true, + version: Some("\"FreeBSD Clang 14.0.5 (https://github.com/llvm/llvm-project.git llvmorg-14.0.5-0-gc12386ae247c)\"".to_string()), + }.is_minversion(14), false); // is_appleclang wins + } + #[test] fn test_parse_arguments_simple() { let a = parses!("-c", "foo.c", "-o", "foo.o");