aboutsummaryrefslogtreecommitdiff
path: root/tests/functional/local.mk
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2023-10-05 12:12:18 -0400
committerJohn Ericson <John.Ericson@Obsidian.Systems>2023-12-01 12:06:43 -0500
commit30dcc19d1f30fc203be460134c4578509cce704f (patch)
tree6cc32609b9984a2c4d5ecc0cac5cf30609e208b9 /tests/functional/local.mk
parent72425212657d795dc215b334b7c8c8cd36d06b72 (diff)
Put functional tests in `tests/functional`
I think it is bad for these reasons when `tests/` contains a mix of functional and integration tests - Concepts is harder to understand, the documentation makes a good unit vs functional vs integration distinction, but when the integration tests are just two subdirs within `tests/` this is not clear. - Source filtering in the `flake.nix` is more complex. We need to filter out some of the dirs from `tests/`, rather than simply pick the dirs we want and take all of them. This is a good sign the structure of what we are trying to do is not matching the structure of the files. With this change we have a clean: ```shell-session $ git show 'HEAD:tests' tree HEAD:tests functional/ installer/ nixos/ ``` (cherry picked from commit 68c81c737571794f7246db53fb4774e94fcf4b7e)
Diffstat (limited to 'tests/functional/local.mk')
-rw-r--r--tests/functional/local.mk146
1 files changed, 146 insertions, 0 deletions
diff --git a/tests/functional/local.mk b/tests/functional/local.mk
new file mode 100644
index 000000000..d60f1e08e
--- /dev/null
+++ b/tests/functional/local.mk
@@ -0,0 +1,146 @@
+nix_tests = \
+ test-infra.sh \
+ init.sh \
+ flakes/flakes.sh \
+ flakes/run.sh \
+ flakes/mercurial.sh \
+ flakes/circular.sh \
+ flakes/init.sh \
+ flakes/inputs.sh \
+ flakes/follow-paths.sh \
+ flakes/bundle.sh \
+ flakes/check.sh \
+ flakes/unlocked-override.sh \
+ flakes/absolute-paths.sh \
+ flakes/build-paths.sh \
+ flakes/flake-in-submodule.sh \
+ gc.sh \
+ nix-collect-garbage-d.sh \
+ remote-store.sh \
+ legacy-ssh-store.sh \
+ lang.sh \
+ lang-test-infra.sh \
+ experimental-features.sh \
+ fetchMercurial.sh \
+ gc-auto.sh \
+ user-envs.sh \
+ user-envs-migration.sh \
+ binary-cache.sh \
+ multiple-outputs.sh \
+ nix-build.sh \
+ gc-concurrent.sh \
+ repair.sh \
+ fixed.sh \
+ export-graph.sh \
+ timeout.sh \
+ fetchGitRefs.sh \
+ gc-runtime.sh \
+ tarball.sh \
+ fetchGit.sh \
+ fetchurl.sh \
+ fetchPath.sh \
+ fetchTree-file.sh \
+ simple.sh \
+ referrers.sh \
+ optimise-store.sh \
+ substitute-with-invalid-ca.sh \
+ signing.sh \
+ hash.sh \
+ gc-non-blocking.sh \
+ check.sh \
+ nix-shell.sh \
+ check-refs.sh \
+ build-remote-input-addressed.sh \
+ secure-drv-outputs.sh \
+ restricted.sh \
+ fetchGitSubmodules.sh \
+ flakes/search-root.sh \
+ readfile-context.sh \
+ nix-channel.sh \
+ recursive.sh \
+ dependencies.sh \
+ check-reqs.sh \
+ build-remote-content-addressed-fixed.sh \
+ build-remote-content-addressed-floating.sh \
+ build-remote-trustless-should-pass-0.sh \
+ build-remote-trustless-should-pass-1.sh \
+ build-remote-trustless-should-pass-2.sh \
+ build-remote-trustless-should-pass-3.sh \
+ build-remote-trustless-should-fail-0.sh \
+ nar-access.sh \
+ pure-eval.sh \
+ eval.sh \
+ repl.sh \
+ binary-cache-build-remote.sh \
+ search.sh \
+ logging.sh \
+ export.sh \
+ config.sh \
+ add.sh \
+ local-store.sh \
+ filter-source.sh \
+ misc.sh \
+ dump-db.sh \
+ linux-sandbox.sh \
+ supplementary-groups.sh \
+ build-dry.sh \
+ structured-attrs.sh \
+ shell.sh \
+ brotli.sh \
+ zstd.sh \
+ compression-levels.sh \
+ nix-copy-ssh.sh \
+ nix-copy-ssh-ng.sh \
+ post-hook.sh \
+ function-trace.sh \
+ flakes/config.sh \
+ fmt.sh \
+ eval-store.sh \
+ why-depends.sh \
+ derivation-json.sh \
+ import-derivation.sh \
+ nix_path.sh \
+ case-hack.sh \
+ placeholders.sh \
+ ssh-relay.sh \
+ build.sh \
+ build-delete.sh \
+ output-normalization.sh \
+ selfref-gc.sh \
+ db-migration.sh \
+ bash-profile.sh \
+ pass-as-file.sh \
+ nix-profile.sh \
+ suggestions.sh \
+ store-ping.sh \
+ fetchClosure.sh \
+ completions.sh \
+ flakes/show.sh \
+ impure-derivations.sh \
+ path-from-hash-part.sh \
+ test-libstoreconsumer.sh \
+ toString-path.sh \
+ read-only-store.sh \
+ nested-sandboxing.sh
+
+ifeq ($(HAVE_LIBCPUID), 1)
+ nix_tests += compute-levels.sh
+endif
+
+ifeq ($(BUILD_SHARED_LIBS), 1)
+ nix_tests += plugins.sh
+endif
+
+$(d)/test-libstoreconsumer.sh.test $(d)/test-libstoreconsumer.sh.test-debug: \
+ $(d)/test-libstoreconsumer/test-libstoreconsumer
+$(d)/plugins.sh.test $(d)/plugins.sh.test-debug: \
+ $(d)/plugins/libplugintest.$(SO_EXT)
+
+install-tests += $(foreach x, $(nix_tests), $(d)/$(x))
+
+test-clean-files := \
+ $(d)/common/vars-and-functions.sh \
+ $(d)/config.nix
+
+clean-files += $(test-clean-files)
+test-deps += $(test-clean-files)