/
ne1ghost
/
nix
Обзор
Документация
Войти
/
ne1ghost
/
nix
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/libexpr-tests/main.cc
42 строки
1 KB
John Ericson
Move unit tests to the location Meson expects them to be
17 окт 2024, 22:42
17 окт 2024, 22:42
e65510d
Код
Авторство
О чём код?
#include <gtest/gtest.h> #include <cstdlib> #include "globals.hh" #include "logging.hh" using namespace nix; int main (int argc, char **argv) { if (argc > 1 && std::string_view(argv[1]) == "__build-remote") { printError("test-build-remote: not supported in libexpr unit tests"); return 1; } // Disable build hook. We won't be testing remote builds in these unit tests. If we do, fix the above build hook. settings.buildHook = {}; #if __linux__ // should match the conditional around sandboxBuildDir declaration. // When building and testing nix within the host's Nix sandbox, our store dir will be located in the host's sandboxBuildDir, e.g.: // Host // storeDir = /nix/store // sandboxBuildDir = /build // This process // storeDir = /build/foo/bar/store // sandboxBuildDir = /build // However, we have a rule that the store dir must not be inside the storeDir, so we need to pick a different sandboxBuildDir. settings.sandboxBuildDir = "/test-build-dir-instead-of-usual-build-dir"; #endif #if __APPLE__ // Avoid this error, when already running in a sandbox: // sandbox-exec: sandbox_apply: Operation not permitted settings.sandboxMode = smDisabled; setEnv("_NIX_TEST_NO_SANDBOX", "1"); #endif // For pipe operator tests in trivial.cc experimentalFeatureSettings.set("experimental-features", "pipe-operators"); ::testing::InitGoogleTest(&argc, argv); return RUN_ALL_TESTS(); }