diff options
Diffstat (limited to 'src/libstore/tests/downstream-placeholder.cc')
-rw-r--r-- | src/libstore/tests/downstream-placeholder.cc | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/src/libstore/tests/downstream-placeholder.cc b/src/libstore/tests/downstream-placeholder.cc index 7b8e2c649..ec3e1000f 100644 --- a/src/libstore/tests/downstream-placeholder.cc +++ b/src/libstore/tests/downstream-placeholder.cc @@ -1,16 +1,33 @@ #include <gtest/gtest.h> -#include "derivations.hh" +#include "downstream-placeholder.hh" namespace nix { -TEST(Derivation, downstreamPlaceholder) { +TEST(DownstreamPlaceholder, unknownCaOutput) { ASSERT_EQ( - downstreamPlaceholder( - (const Store &)*(const Store *)nullptr, // argument is unused + DownstreamPlaceholder::unknownCaOutput( StorePath { "g1w7hy3qg1w7hy3qg1w7hy3qg1w7hy3q-foo.drv" }, - "out"), + "out").render(), "/0c6rn30q4frawknapgwq386zq358m8r6msvywcvc89n6m5p2dgbz"); } +TEST(DownstreamPlaceholder, unknownDerivation) { + /** + * We set these in tests rather than the regular globals so we don't have + * to worry about race conditions if the tests run concurrently. + */ + ExperimentalFeatureSettings mockXpSettings; + mockXpSettings.set("experimental-features", "dynamic-derivations ca-derivations"); + + ASSERT_EQ( + DownstreamPlaceholder::unknownDerivation( + DownstreamPlaceholder::unknownCaOutput( + StorePath { "g1w7hy3qg1w7hy3qg1w7hy3qg1w7hy3q-foo.drv.drv" }, + "out"), + "out", + mockXpSettings).render(), + "/0gn6agqxjyyalf0dpihgyf49xq5hqxgw100f0wydnj6yqrhqsb3w"); +} + } |