mirror of
https://github.com/NixOS/nix
synced 2025-07-07 22:33:57 +02:00
Merge pull request #7687 from hercules-ci/2.13-maintenance-revert-addition-of-property-tests
[2.13-maintenance] revert addition of property tests
This commit is contained in:
commit
da3faaf8a6
5 changed files with 4 additions and 97 deletions
|
@ -274,12 +274,6 @@ fi
|
||||||
PKG_CHECK_MODULES([GTEST], [gtest_main])
|
PKG_CHECK_MODULES([GTEST], [gtest_main])
|
||||||
|
|
||||||
|
|
||||||
# Look for rapidcheck.
|
|
||||||
# No pkg-config yet, https://github.com/emil-e/rapidcheck/issues/302
|
|
||||||
AC_CHECK_HEADERS([rapidcheck/gtest.h], [], [], [#include <gtest/gtest.h>])
|
|
||||||
AC_CHECK_LIB([rapidcheck], [])
|
|
||||||
|
|
||||||
|
|
||||||
# Look for nlohmann/json.
|
# Look for nlohmann/json.
|
||||||
PKG_CHECK_MODULES([NLOHMANN_JSON], [nlohmann_json >= 3.9])
|
PKG_CHECK_MODULES([NLOHMANN_JSON], [nlohmann_json >= 3.9])
|
||||||
|
|
||||||
|
|
|
@ -92,8 +92,7 @@ $ nix develop
|
||||||
|
|
||||||
The unit-tests for each Nix library (`libexpr`, `libstore`, etc..) are defined
|
The unit-tests for each Nix library (`libexpr`, `libstore`, etc..) are defined
|
||||||
under `src/{library_name}/tests` using the
|
under `src/{library_name}/tests` using the
|
||||||
[googletest](https://google.github.io/googletest/) and
|
[googletest](https://google.github.io/googletest/) framework.
|
||||||
[rapidcheck](https://github.com/emil-e/rapidcheck) frameworks.
|
|
||||||
|
|
||||||
You can run the whole testsuite with `make check`, or the tests for a specific component with `make libfoo-tests_RUN`. Finer-grained filtering is also possible using the [--gtest_filter](https://google.github.io/googletest/advanced.html#running-a-subset-of-the-tests) command-line option.
|
You can run the whole testsuite with `make check`, or the tests for a specific component with `make libfoo-tests_RUN`. Finer-grained filtering is also possible using the [--gtest_filter](https://google.github.io/googletest/advanced.html#running-a-subset-of-the-tests) command-line option.
|
||||||
|
|
||||||
|
|
12
flake.nix
12
flake.nix
|
@ -82,9 +82,7 @@
|
||||||
});
|
});
|
||||||
|
|
||||||
configureFlags =
|
configureFlags =
|
||||||
[
|
lib.optionals stdenv.isLinux [
|
||||||
"CXXFLAGS=-I${lib.getDev rapidcheck}/extras/gtest/include"
|
|
||||||
] ++ lib.optionals stdenv.isLinux [
|
|
||||||
"--with-boost=${boost}/lib"
|
"--with-boost=${boost}/lib"
|
||||||
"--with-sandbox-shell=${sh}/bin/busybox"
|
"--with-sandbox-shell=${sh}/bin/busybox"
|
||||||
]
|
]
|
||||||
|
@ -118,7 +116,6 @@
|
||||||
boost
|
boost
|
||||||
lowdown-nix
|
lowdown-nix
|
||||||
gtest
|
gtest
|
||||||
rapidcheck
|
|
||||||
]
|
]
|
||||||
++ lib.optionals stdenv.isLinux [libseccomp]
|
++ lib.optionals stdenv.isLinux [libseccomp]
|
||||||
++ lib.optional (stdenv.isLinux || stdenv.isDarwin) libsodium
|
++ lib.optional (stdenv.isLinux || stdenv.isDarwin) libsodium
|
||||||
|
@ -658,7 +655,6 @@
|
||||||
inherit system crossSystem;
|
inherit system crossSystem;
|
||||||
overlays = [ self.overlays.default ];
|
overlays = [ self.overlays.default ];
|
||||||
};
|
};
|
||||||
inherit (nixpkgsCross) lib;
|
|
||||||
in with commonDeps { pkgs = nixpkgsCross; }; nixpkgsCross.stdenv.mkDerivation {
|
in with commonDeps { pkgs = nixpkgsCross; }; nixpkgsCross.stdenv.mkDerivation {
|
||||||
name = "nix-${version}";
|
name = "nix-${version}";
|
||||||
|
|
||||||
|
@ -671,11 +667,7 @@
|
||||||
nativeBuildInputs = nativeBuildDeps;
|
nativeBuildInputs = nativeBuildDeps;
|
||||||
buildInputs = buildDeps ++ propagatedDeps;
|
buildInputs = buildDeps ++ propagatedDeps;
|
||||||
|
|
||||||
configureFlags = [
|
configureFlags = [ "--sysconfdir=/etc" "--disable-doc-gen" ];
|
||||||
"CXXFLAGS=-I${lib.getDev nixpkgsCross.rapidcheck}/extras/gtest/include"
|
|
||||||
"--sysconfdir=/etc"
|
|
||||||
"--disable-doc-gen"
|
|
||||||
];
|
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
|
|
|
@ -12,4 +12,4 @@ libstore-tests_CXXFLAGS += -I src/libstore -I src/libutil
|
||||||
|
|
||||||
libstore-tests_LIBS = libstore libutil
|
libstore-tests_LIBS = libstore libutil
|
||||||
|
|
||||||
libstore-tests_LDFLAGS := -lrapidcheck $(GTEST_LIBS)
|
libstore-tests_LDFLAGS := $(GTEST_LIBS)
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
|
|
||||||
#include <nlohmann/json.hpp>
|
#include <nlohmann/json.hpp>
|
||||||
#include <gtest/gtest.h>
|
#include <gtest/gtest.h>
|
||||||
#include <rapidcheck/gtest.h>
|
|
||||||
|
|
||||||
#include "path-regex.hh"
|
#include "path-regex.hh"
|
||||||
#include "store-api.hh"
|
#include "store-api.hh"
|
||||||
|
@ -63,82 +62,5 @@ TEST_DO_PARSE(equals_sign, "foo=foo")
|
||||||
|
|
||||||
#undef TEST_DO_PARSE
|
#undef TEST_DO_PARSE
|
||||||
|
|
||||||
// For rapidcheck
|
|
||||||
void showValue(const StorePath & p, std::ostream & os) {
|
|
||||||
os << p.to_string();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
namespace rc {
|
|
||||||
using namespace nix;
|
|
||||||
|
|
||||||
template<>
|
|
||||||
struct Arbitrary<StorePath> {
|
|
||||||
static Gen<StorePath> arbitrary();
|
|
||||||
};
|
|
||||||
|
|
||||||
Gen<StorePath> Arbitrary<StorePath>::arbitrary()
|
|
||||||
{
|
|
||||||
auto len = *gen::inRange<size_t>(1, StorePath::MaxPathLen);
|
|
||||||
|
|
||||||
std::string pre { HASH_PART "-" };
|
|
||||||
pre.reserve(pre.size() + len);
|
|
||||||
|
|
||||||
for (size_t c = 0; c < len; ++c) {
|
|
||||||
switch (auto i = *gen::inRange<uint8_t>(0, 10 + 2 * 26 + 6)) {
|
|
||||||
case 0 ... 9:
|
|
||||||
pre += '0' + i;
|
|
||||||
case 10 ... 35:
|
|
||||||
pre += 'A' + (i - 10);
|
|
||||||
break;
|
|
||||||
case 36 ... 61:
|
|
||||||
pre += 'a' + (i - 36);
|
|
||||||
break;
|
|
||||||
case 62:
|
|
||||||
pre += '+';
|
|
||||||
break;
|
|
||||||
case 63:
|
|
||||||
pre += '-';
|
|
||||||
break;
|
|
||||||
case 64:
|
|
||||||
pre += '.';
|
|
||||||
break;
|
|
||||||
case 65:
|
|
||||||
pre += '_';
|
|
||||||
break;
|
|
||||||
case 66:
|
|
||||||
pre += '?';
|
|
||||||
break;
|
|
||||||
case 67:
|
|
||||||
pre += '=';
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
assert(false);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return gen::just(StorePath { pre });
|
|
||||||
}
|
|
||||||
|
|
||||||
} // namespace rc
|
|
||||||
|
|
||||||
namespace nix {
|
|
||||||
|
|
||||||
RC_GTEST_FIXTURE_PROP(
|
|
||||||
StorePathTest,
|
|
||||||
prop_regex_accept,
|
|
||||||
(const StorePath & p))
|
|
||||||
{
|
|
||||||
RC_ASSERT(std::regex_match(std::string { p.name() }, nameRegex));
|
|
||||||
}
|
|
||||||
|
|
||||||
RC_GTEST_FIXTURE_PROP(
|
|
||||||
StorePathTest,
|
|
||||||
prop_round_rip,
|
|
||||||
(const StorePath & p))
|
|
||||||
{
|
|
||||||
RC_ASSERT(p == store->parseStorePath(store->printStorePath(p)));
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue