#include "nix/store/tests/outputs-spec.hh" #include namespace rc { using namespace nix; Gen Arbitrary::arbitrary() { return gen::mapcat( gen::inRange(0, std::variant_size_v), [](uint8_t n) -> Gen { switch (n) { case 0: return gen::just((OutputsSpec) OutputsSpec::All{}); case 1: return gen::map( gen::nonEmpty( gen::container( gen::map(gen::arbitrary(), [](StorePathName n) { return n.name; }))), [](StringSet names) { return (OutputsSpec) OutputsSpec::Names{names}; }); default: assert(false); } }); } } // namespace rc