From eeecfc14c6d647596ab368103d78f7acec68e0aa Mon Sep 17 00:00:00 2001 From: Adirelle Date: Tue, 14 May 2024 08:10:19 +0200 Subject: [PATCH] test: check plugin dependencies with python and pipx. (#2109) --- e2e/forge/test_pipx_deep_dependencies | 36 +++++++++++++++++++++++++ e2e/forge/test_pipx_direct_dependencies | 31 +++++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 e2e/forge/test_pipx_deep_dependencies create mode 100644 e2e/forge/test_pipx_direct_dependencies diff --git a/e2e/forge/test_pipx_deep_dependencies b/e2e/forge/test_pipx_deep_dependencies new file mode 100644 index 000000000..ad7a33f8b --- /dev/null +++ b/e2e/forge/test_pipx_deep_dependencies @@ -0,0 +1,36 @@ +# shellcheck shell=bash disable=SC2016,SC2034 + +# Create system "tools" that always fail and push them to the front of PATH +cat >"$HOME/bin/fail" <<'EOF' +#!/usr/bin/env bash +echo "CALL TO SYSTEM $(basename $0)! args: $*" >&2 +exit 1 +EOF +chmod +x "$HOME"/bin/fail +for TOOL in python python3 pipx; do + ln -s fail "$HOME/bin/$TOOL" +done +export PATH="$HOME/bin:$PATH" + +# Just to be sure... +assert_fail "python" +assert_fail "python3" +assert_fail "pipx" + +# Use only precompiled python +export MISE_PYTHON_COMPILE=0 + +# Set up a 3-step installation: python@3.12.3 > pipx@1.5.0 > pipx:mkdocs@1.6.0 +cat >.mise.toml <"$HOME/bin/pipx" <<'EOF' +#!/usr/bin/env bash +echo "CALL TO SYSTEM pipx! args: $*" >&2 +exit 1 +EOF +chmod +x "$HOME"/bin/pipx +export PATH="$HOME/bin:$PATH" + +# Just to be sure... +assert_fail "pipx" + +# Use precompiled python +export MISE_PYTHON_COMPILE=0 + +# Set up a 2-step installation: pipx@1.5.0 > pipx:mkdocs@1.6.0 +cat >.mise.toml <