diff options
Diffstat (limited to 'third_party/nix/src/tests/references_test.cc')
-rw-r--r-- | third_party/nix/src/tests/references_test.cc | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/third_party/nix/src/tests/references_test.cc b/third_party/nix/src/tests/references_test.cc deleted file mode 100644 index 8dcb3ed37a8b..000000000000 --- a/third_party/nix/src/tests/references_test.cc +++ /dev/null @@ -1,74 +0,0 @@ -#include "libstore/references.hh" - -#include <cstdio> -#include <fstream> -#include <ostream> -#include <unordered_set> - -#include <absl/strings/str_format.h> -#include <gtest/gtest.h> -#include <rapidcheck.h> -#include <rapidcheck/gtest.h> - -#include "libutil/hash.hh" - -class ReferencesTest : public ::testing::Test {}; - -namespace nix { - -TEST(ReferencesTest, ScanForOneReferenceNotFound) { - char path[] = "store_XXXXXXX"; - auto f = mkstemp(path); - - auto hash = hashString(htSHA256, "foo"); - auto ref = absl::StrFormat("/nix/store/%s-foo", hash.ToStorePathHash()); - - HashResult hr; - auto result = scanForReferences(path, {ref}, hr); - - ASSERT_EQ(result.find(ref), result.end()); - - EXPECT_EQ(close(f), 0); -} - -TEST(ReferencesTest, ScanForOneReferenceFound) { - char path[] = "store_XXXXXXX"; - auto f = mkstemp(path); - - auto hash = hashString(htSHA256, "foo"); - auto ref = absl::StrFormat("/nix/store/%s-foo", hash.ToStorePathHash()); - - EXPECT_GT(write(f, ref.c_str(), sizeof(char) * ref.size()), 0); - - HashResult hr; - auto result = scanForReferences(path, {ref}, hr); - - ASSERT_NE(result.find(ref), result.end()); - - ASSERT_EQ(close(f), 0); -} - -RC_GTEST_PROP(ReferencesTest, ScanForReferences, - (std::unordered_set<std::string> strs)) { - char path[] = "store_XXXXXXX"; - auto f = mkstemp(path); - - PathSet refs; - for (const auto& s : strs) { - auto hash = hashString(htSHA256, s); - auto ref = absl::StrFormat("/nix/store/%s-foo", hash.ToStorePathHash()); - refs.insert(ref); - RC_ASSERT(write(f, ref.c_str(), sizeof(char) * ref.size()) > 0); - } - - HashResult hr; - auto result = scanForReferences(path, refs, hr); - - for (const auto& ref : refs) { - RC_ASSERT(result.find(ref) != result.end()); - } - - RC_ASSERT(close(f) == 0); -} - -} // namespace nix |