about summary refs log tree commit diff
diff options
context:
space:
mode:
authorVincent Ambo <mail@tazj.in>2020-07-18T17·53+0100
committertazjin <mail@tazj.in>2020-07-18T18·08+0000
commit4b1818cb01a48805388b8b6ab5578da54612a963 (patch)
tree5f0d7dd28343741fdb3ce797eed595eb3cbbb9c5
parentcdc1a0bb6ec52cd05c1a72c00c3c3a4f716a429a (diff)
refactor(3p/nix/tests): Move DummyStore into a separate file r/1378
This store implementation is required in all unit tests that use the
evaluator.

Change-Id: I1cfe8cecab8722cd66dc803747821a2be2b2619f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1269
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
-rw-r--r--third_party/nix/src/tests/dummy-store.hh41
-rw-r--r--third_party/nix/src/tests/value-to-json.cc36
2 files changed, 44 insertions, 33 deletions
diff --git a/third_party/nix/src/tests/dummy-store.hh b/third_party/nix/src/tests/dummy-store.hh
new file mode 100644
index 0000000000..efa4390d28
--- /dev/null
+++ b/third_party/nix/src/tests/dummy-store.hh
@@ -0,0 +1,41 @@
+#pragma once
+
+#include "libstore/store-api.hh"
+
+namespace nix::tests {
+
+class DummyStore final : public Store {
+ public:
+  explicit DummyStore() : Store(Store::Params{}) {}
+
+  std::string getUri() { return ""; }
+
+  void queryPathInfoUncached(
+      const Path& path,
+      Callback<std::shared_ptr<ValidPathInfo>> callback) noexcept {}
+
+  Path queryPathFromHashPart(const std::string& hashPart) { return ""; }
+
+  Path addToStore(const std::string& name, const Path& srcPath,
+                  bool recursive = true, HashType hashAlgo = htSHA256,
+                  PathFilter& filter = defaultPathFilter,
+                  RepairFlag repair = NoRepair) {
+    return "/nix/store/g1w7hy3qg1w7hy3qg1w7hy3qg1w7hy3q-x";
+  }
+
+  Path addTextToStore(const std::string& name, const std::string& s,
+                      const PathSet& references, RepairFlag repair = NoRepair) {
+    return "/nix/store/g1w7hy3qg1w7hy3qg1w7hy3qg1w7hy3q-x";
+  }
+
+  void narFromPath(const Path& path, Sink& sink) {}
+
+  BuildResult buildDerivation(const Path& drvPath, const BasicDerivation& drv,
+                              BuildMode buildMode = bmNormal) {
+    return BuildResult{};
+  }
+
+  void ensurePath(const Path& path) {}
+};
+
+}  // namespace nix::tests
diff --git a/third_party/nix/src/tests/value-to-json.cc b/third_party/nix/src/tests/value-to-json.cc
index 7446987334..19591b6fa1 100644
--- a/third_party/nix/src/tests/value-to-json.cc
+++ b/third_party/nix/src/tests/value-to-json.cc
@@ -9,6 +9,8 @@
 #include "libexpr/value.hh"
 #include "libstore/store-api.hh"
 
+#include "tests/dummy-store.hh"
+
 class ValueTest : public ::testing::Test {
  protected:
   static void SetUpTestCase() { nix::initGC(); }
@@ -21,39 +23,7 @@ class XMLValueTest : public ValueTest {};
 
 namespace nix {
 
-class DummyStore final : public Store {
- public:
-  explicit DummyStore() : Store(Store::Params{}) {}
-
-  std::string getUri() { return ""; }
-
-  void queryPathInfoUncached(
-      const Path& path,
-      Callback<std::shared_ptr<ValidPathInfo>> callback) noexcept {}
-
-  Path queryPathFromHashPart(const std::string& hashPart) { return ""; }
-
-  Path addToStore(const std::string& name, const Path& srcPath,
-                  bool recursive = true, HashType hashAlgo = htSHA256,
-                  PathFilter& filter = defaultPathFilter,
-                  RepairFlag repair = NoRepair) {
-    return "/nix/store/g1w7hy3qg1w7hy3qg1w7hy3qg1w7hy3q-x";
-  }
-
-  Path addTextToStore(const std::string& name, const std::string& s,
-                      const PathSet& references, RepairFlag repair = NoRepair) {
-    return "/nix/store/g1w7hy3qg1w7hy3qg1w7hy3qg1w7hy3q-x";
-  }
-
-  void narFromPath(const Path& path, Sink& sink) {}
-
-  BuildResult buildDerivation(const Path& drvPath, const BasicDerivation& drv,
-                              BuildMode buildMode = bmNormal) {
-    return BuildResult{};
-  }
-
-  void ensurePath(const Path& path) {}
-};
+using nix::tests::DummyStore;
 
 TEST_F(JSONValueTest, null) {
   std::stringstream ss;