diff options
Diffstat (limited to 'test/buildtool/main/install_cas.test.cpp')
-rw-r--r-- | test/buildtool/main/install_cas.test.cpp | 42 |
1 files changed, 29 insertions, 13 deletions
diff --git a/test/buildtool/main/install_cas.test.cpp b/test/buildtool/main/install_cas.test.cpp index 9c9ef8e0..8e9bc121 100644 --- a/test/buildtool/main/install_cas.test.cpp +++ b/test/buildtool/main/install_cas.test.cpp @@ -16,54 +16,70 @@ #include "catch2/catch_test_macros.hpp" #include "src/buildtool/common/artifact.hpp" +#include "src/buildtool/compatibility/compatibility.hpp" +#include "src/buildtool/crypto/hash_function.hpp" TEST_CASE("ObjectInfoFromLiberalString", "[artifact]") { auto expected = *Artifact::ObjectInfo::FromString( "[5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689:11:f]"); - auto expected_as_tree = *Artifact::ObjectInfo::FromString( - "[5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689:0:t]"); // Check (default) file hashes CHECK(ObjectInfoFromLiberalString( + HashFunction::Type::GitSHA1, "[5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689:11:f]", /*has_remote=*/false) == expected); CHECK(ObjectInfoFromLiberalString( + HashFunction::Type::GitSHA1, "5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689:11:f]", /*has_remote=*/false) == expected); CHECK(ObjectInfoFromLiberalString( + HashFunction::Type::GitSHA1, "[5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689:11:f", /*has_remote=*/false) == expected); CHECK(ObjectInfoFromLiberalString( + HashFunction::Type::GitSHA1, "5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689:11:f", /*has_remote=*/false) == expected); CHECK(ObjectInfoFromLiberalString( + HashFunction::Type::GitSHA1, "5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689:11:file", /*has_remote=*/false) == expected); CHECK(ObjectInfoFromLiberalString( + HashFunction::Type::GitSHA1, "5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689:11:notavalidletter", /*has_remote=*/false) == expected); // Without size, which is not honored in equality CHECK( - ObjectInfoFromLiberalString("5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689", + ObjectInfoFromLiberalString(HashFunction::Type::GitSHA1, + "5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689", /*has_remote=*/false) == expected); CHECK( - ObjectInfoFromLiberalString("5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689:", + ObjectInfoFromLiberalString(HashFunction::Type::GitSHA1, + "5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689:", /*has_remote=*/false) == expected); // Syntactically invalid size should be ignored CHECK(ObjectInfoFromLiberalString( + HashFunction::Type::GitSHA1, "5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689:xyz", /*has_remote=*/false) == expected); // Check tree hashes - CHECK(ObjectInfoFromLiberalString( - "5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689::t", - /*has_remote=*/false) == expected_as_tree); - CHECK(ObjectInfoFromLiberalString( - "5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689::tree", - /*has_remote=*/false) == expected_as_tree); - CHECK(ObjectInfoFromLiberalString( - "5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689:xyz:t", - /*has_remote=*/false) == expected_as_tree); + if (not Compatibility::IsCompatible()) { + auto expected_as_tree = *Artifact::ObjectInfo::FromString( + "[5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689:0:t]"); + CHECK(ObjectInfoFromLiberalString( + HashFunction::Type::GitSHA1, + "5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689::t", + /*has_remote=*/false) == expected_as_tree); + CHECK(ObjectInfoFromLiberalString( + HashFunction::Type::GitSHA1, + "5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689::tree", + /*has_remote=*/false) == expected_as_tree); + CHECK(ObjectInfoFromLiberalString( + HashFunction::Type::GitSHA1, + "5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689:xyz:t", + /*has_remote=*/false) == expected_as_tree); + } } |