lix/tests/functional
Qyriad 038daad218 meson: implement functional tests
Functional tests can be run with
`meson test -C build --suite installcheck`.

Notably, functional tests must be run *after* running `meson install`
(Lix's derivation runs the installcheck suite in installCheckPhase so it
does this correctly), due to some quirks between Meson and the testing
system.

As far as I can tell the functional tests are meant to be run after
installing anyway, but unfortunately I can't transparently make
`meson test --suite installcheck` depend on the install targets.

The script that runs the functional tests, meson/run-test.py, checks
that `meson install` has happened and fails fast with a (hopefully)
helpful error message if any of the functional tests are run before
installing.

TODO: this change needs reflection in developer documentation

Change-Id: I8dcb5fdfc0b6cb17580973d24ad930abd57018f6
2024-03-27 18:37:50 -06:00
..
ca meson: implement functional tests 2024-03-27 18:37:50 -06:00
common meson: implement functional tests 2024-03-27 18:37:50 -06:00
config Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
dyn-drv meson: implement functional tests 2024-03-27 18:37:50 -06:00
flakes Merge pull request #8817 from iFreilicht/flake-update-lock-overhaul 2024-03-25 17:36:24 -06:00
lang use byte indexed locations for PosIdx 2024-03-18 16:12:46 +01:00
nested-sandboxing Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
plugins Allow dlopen of plugins to fail 2024-03-15 12:31:16 -07:00
repl_characterization libexpr: associate let exprs with the correct StaticEnv 2024-03-18 14:15:22 -07:00
test-libstoreconsumer Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
add.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
bad.tar.xz Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
bash-profile.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
big-derivation-attr.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
binary-cache-build-remote.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
binary-cache.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
brotli.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-delete.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-dry.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-hook-ca-fixed.nix Merge pull request #9032 from Ma27/structured-attrs-env-vars 2024-03-07 10:46:47 +01:00
build-hook-ca-floating.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-hook.nix Merge pull request #9032 from Ma27/structured-attrs-env-vars 2024-03-07 10:46:47 +01:00
build-remote-content-addressed-fixed.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote-content-addressed-floating.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote-input-addressed.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote-trustless-after.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote-trustless-should-fail-0.sh Merge pull request #9529 from wh0/patch-1 2024-03-04 07:11:25 +01:00
build-remote-trustless-should-pass-0.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote-trustless-should-pass-1.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote-trustless-should-pass-2.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote-trustless-should-pass-3.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote-trustless.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
ca-shell.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
case-hack.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
case.nar Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
check-refs.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
check-refs.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
check-reqs.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
check-reqs.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
check.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
check.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
common.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
completions.sh Merge pull request #8817 from iFreilicht/flake-update-lock-overhaul 2024-03-25 17:36:24 -06:00
compression-levels.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
compute-levels.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
config.nix.in Merge pull request #9032 from Ma27/structured-attrs-env-vars 2024-03-07 10:46:47 +01:00
config.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
db-migration.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
debugger.sh Merge pull request #9933 from pennae/debugger-fix 2024-03-04 08:57:44 +01:00
dependencies.builder0.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
dependencies.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
dependencies.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
derivation-json.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
dummy Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
dump-db.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
eval-store.sh Merge pull request #9589 from obsidiansystems/floating-content-addressing-derivations-eval-store 2024-03-04 07:15:08 +01:00
eval.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
eval.sh Improve new CLI UX by supporting short -E flag for --expr 2024-03-24 21:17:51 -06:00
experimental-features.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
export-graph.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
export-graph.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
export.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
failing.nix Merge pull request #9032 from Ma27/structured-attrs-env-vars 2024-03-07 10:46:47 +01:00
fetchClosure.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fetchGit.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fetchGitRefs.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fetchGitSubmodules.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fetchMercurial.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fetchPath.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fetchTree-file.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fetchurl.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
filter-source.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
filter-source.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fixed.builder1.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fixed.builder2.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fixed.nix Merge pull request #9662 from shlevy/flat-fixed-references-assert 2024-03-04 07:50:02 +01:00
fixed.sh Merge pull request #9662 from shlevy/flat-fixed-references-assert 2024-03-04 07:50:02 +01:00
fmt.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fmt.simple.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
function-trace.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
gc-auto.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
gc-concurrent.builder.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
gc-concurrent.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
gc-concurrent.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
gc-concurrent2.builder.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
gc-non-blocking.sh Merge pull request #8544 from edolstra/handle-missing-gc-socket 2024-03-07 00:43:51 -07:00
gc-runtime.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
gc-runtime.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
gc.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
hash-check.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
hash.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
hermetic.nix Merge pull request #9032 from Ma27/structured-attrs-env-vars 2024-03-07 10:46:47 +01:00
ifd.nix Merge branch '2.18-maintenance' into ifd-buildStore-2.18 2024-01-11 07:21:16 -05:00
import-derivation.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
import-derivation.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
impure-derivations.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
impure-derivations.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
impure-eval.sh Merge pull request #4093 from matthewbauer/eval-system 2024-03-04 07:21:01 +01:00
init.sh Merge pull request #9233 from bouk/bouk/apply-config-inner 2024-03-04 07:11:25 +01:00
install-darwin.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
lang-test-infra.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
lang.sh Fix boost::bad_format_string exception in builtins.addErrorContext (#9291) 2024-03-04 05:39:12 +01:00
legacy-ssh-store.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
linux-sandbox-cert-test.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
linux-sandbox.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
local-store.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
local.mk Allow dlopen of plugins to fail 2024-03-15 12:31:16 -07:00
logging.sh Merge pull request #9637 from 9999years/fix-logging-test-on-macos 2024-03-04 07:26:34 +01:00
meson.build meson: implement functional tests 2024-03-27 18:37:50 -06:00
misc.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
multiple-outputs.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
multiple-outputs.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
nar-access.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
nar-access.sh Merge pull request #9288 from edolstra/fix-nar-access-test 2024-03-04 05:27:18 +01:00
nested-sandboxing.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
nix-build-examples.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
nix-build.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
nix-channel.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
nix-collect-garbage-d.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
nix-copy-ssh-common.sh Merge pull request #9604 from obsidiansystems/test-substitute-on-destination 2024-03-07 03:34:00 +01:00
nix-copy-ssh-ng.sh Merge pull request #9604 from obsidiansystems/test-substitute-on-destination 2024-03-07 03:34:00 +01:00
nix-copy-ssh.sh Merge pull request #9604 from obsidiansystems/test-substitute-on-destination 2024-03-07 03:34:00 +01:00
nix-daemon-untrusting.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
nix-profile.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
nix-shell.sh Merge pull request #9930 from rvl/print-dev-env-unbound-variables 2024-03-04 08:51:49 +01:00
nix_path.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
optimise-store.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
output-normalization.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
parallel.builder.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
parallel.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
parallel.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
pass-as-file.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
path-from-hash-part.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
path.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
placeholders.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
plugins.sh Allow dlopen of plugins to fail 2024-03-15 12:31:16 -07:00
post-hook.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
pure-eval.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
pure-eval.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
push-to-store-old.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
push-to-store.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
read-only-store.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
readfile-context.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
readfile-context.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
recursive.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
recursive.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
referrers.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
remote-store.sh Merge branch '2.18-maintenance' into ifd-buildStore-2.18 2024-01-11 07:21:16 -05:00
repair.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
repl.sh Pretty-print values in the REPL 2024-03-09 07:20:23 -07:00
restricted.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
restricted.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
search.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
search.sh Merge pull request #9481 from iFreilicht/disallow-nix-search-without-search-terms 2024-03-04 08:40:12 +01:00
secure-drv-outputs.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
secure-drv-outputs.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
selfref-gc.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
shell-hello.nix Merge pull request #9648 from cole-h/nix-shell-ordering 2024-03-04 07:50:55 +01:00
shell.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
shell.sh Merge pull request #9648 from cole-h/nix-shell-ordering 2024-03-04 07:50:55 +01:00
shell.shebang.nix Merge pull request #8470 from ncfavier/shebang-single-quotes 2024-03-04 05:06:32 +01:00
shell.shebang.rb Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
shell.shebang.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
signing.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
simple-failing.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
simple.builder.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
simple.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
simple.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
ssh-relay.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
store-ping.sh Merge pull request #9632 from cole-h/nix-daemon-testing 2024-03-04 08:17:32 +01:00
structured-attrs-shell.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
structured-attrs.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
structured-attrs.sh Merge pull request #9032 from Ma27/structured-attrs-env-vars 2024-03-07 10:46:47 +01:00
substitute-with-invalid-ca.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
suggestions.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
supplementary-groups.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
tarball.sh Merge pull request #9225 from drupol/nixpkgs-pr-107251/make-gnutar-reproducible 2024-03-04 05:34:19 +01:00
test-infra.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
test-libstoreconsumer.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
test-repl-characterization.sh Implement a parser for a literate testing system for the repl 2024-03-14 14:30:38 -07:00
timeout.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
timeout.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
toString-path.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
undefined-variable.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
user-envs-migration.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
user-envs.builder.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
user-envs.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
user-envs.sh Merge pull request #9257 from Artturin/nixenvjsondrvpath 2024-03-04 05:59:15 +01:00
why-depends.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
zstd.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00