diff options
Diffstat (limited to 'llvm/unittests/CAS/CASTestConfig.cpp')
| -rw-r--r-- | llvm/unittests/CAS/CASTestConfig.cpp | 17 | 
1 files changed, 15 insertions, 2 deletions
diff --git a/llvm/unittests/CAS/CASTestConfig.cpp b/llvm/unittests/CAS/CASTestConfig.cpp index 10e4b68..08cbf1d 100644 --- a/llvm/unittests/CAS/CASTestConfig.cpp +++ b/llvm/unittests/CAS/CASTestConfig.cpp @@ -8,6 +8,7 @@  #include "CASTestConfig.h"  #include "llvm/CAS/ObjectStore.h" +#include "llvm/Testing/Support/Error.h"  #include "gtest/gtest.h"  #include <mutex> @@ -15,7 +16,8 @@ using namespace llvm;  using namespace llvm::cas;  static CASTestingEnv createInMemory(int I) { -  return CASTestingEnv{createInMemoryCAS(), createInMemoryActionCache()}; +  return CASTestingEnv{createInMemoryCAS(), createInMemoryActionCache(), +                       std::nullopt};  }  INSTANTIATE_TEST_SUITE_P(InMemoryCAS, CASTest, @@ -23,7 +25,7 @@ INSTANTIATE_TEST_SUITE_P(InMemoryCAS, CASTest,  #if LLVM_ENABLE_ONDISK_CAS  namespace llvm::cas::ondisk { -extern void setMaxMappingSize(uint64_t Size); +void setMaxMappingSize(uint64_t Size);  } // namespace llvm::cas::ondisk  void setMaxOnDiskCASMappingSize() { @@ -31,6 +33,17 @@ void setMaxOnDiskCASMappingSize() {    std::call_once(        Flag, [] { llvm::cas::ondisk::setMaxMappingSize(100 * 1024 * 1024); });  } + +static CASTestingEnv createOnDisk(int I) { +  unittest::TempDir Temp("on-disk-cas", /*Unique=*/true); +  std::unique_ptr<ObjectStore> CAS; +  EXPECT_THAT_ERROR(createOnDiskCAS(Temp.path()).moveInto(CAS), Succeeded()); +  std::unique_ptr<ActionCache> Cache; +  EXPECT_THAT_ERROR(createOnDiskActionCache(Temp.path()).moveInto(Cache), +                    Succeeded()); +  return CASTestingEnv{std::move(CAS), std::move(Cache), std::move(Temp)}; +} +INSTANTIATE_TEST_SUITE_P(OnDiskCAS, CASTest, ::testing::Values(createOnDisk));  #else  void setMaxOnDiskCASMappingSize() {}  #endif /* LLVM_ENABLE_ONDISK_CAS */  | 
