Drop tests for shipped one-shot migrations (#10318)
Keep the migrations themselves for late-updaters. Drop the tests that only exercised frozen file rewrites from 4.0.0, and keep live invariants, privileged repairs, and the migrator.
This commit is contained in:
1 parent
eb56446c42
commit
36e56f4fb4
14 files changed
+26
-947
No files matched your search
@@ -519,101 +519,6 @@ expected_background="$THEME_TMPDIR/.local/state/omarchy/current/theme/background
|
||||
[[ ! -e $THEME_TMPDIR/.config/omarchy/current ]] || fail "headless theme set avoids config current state"
|
||||
pass "headless theme set creates current background symlink"
|
||||
|
||||
make_tmpdir MIGRATION_TMPDIR
|
||||
mkdir -p \
|
||||
"$MIGRATION_TMPDIR/.config/omarchy/current/theme" \
|
||||
"$MIGRATION_TMPDIR/.config/alacritty" \
|
||||
"$MIGRATION_TMPDIR/.config/hypr" \
|
||||
"$MIGRATION_TMPDIR/.config/hyprland-preview-share-picker" \
|
||||
"$MIGRATION_TMPDIR/.config/btop/themes"
|
||||
printf 'tokyo-night\n' >"$MIGRATION_TMPDIR/.config/omarchy/current/theme.name"
|
||||
printf 'x\n' >"$MIGRATION_TMPDIR/.config/omarchy/current/theme/colors.toml"
|
||||
printf 'general.import = [ "~/.config/omarchy/current/theme/alacritty.toml" ]\n' >"$MIGRATION_TMPDIR/.config/alacritty/alacritty.toml"
|
||||
printf 'stylesheets: ["../omarchy/current/theme/hyprland-preview-share-picker.css"]\n' >"$MIGRATION_TMPDIR/.config/hyprland-preview-share-picker/config.yaml"
|
||||
cat >"$MIGRATION_TMPDIR/.config/hypr/hyprland.lua" <<'LUA'
|
||||
package.path = os.getenv("HOME")
|
||||
.. "/.config/?.lua;"
|
||||
.. (os.getenv("OMARCHY_PATH") or "/usr/share/omarchy")
|
||||
.. "/?.lua;"
|
||||
.. package.path
|
||||
LUA
|
||||
ln -s "$MIGRATION_TMPDIR/.config/omarchy/current/theme/btop.theme" "$MIGRATION_TMPDIR/.config/btop/themes/current.theme"
|
||||
HOME="$MIGRATION_TMPDIR" bash -euo pipefail "$ROOT/migrations/1781043107.sh" >/dev/null
|
||||
[[ -f $MIGRATION_TMPDIR/.local/state/omarchy/current/theme.name ]] || fail "current theme migration moves theme name"
|
||||
[[ ! -e $MIGRATION_TMPDIR/.config/omarchy/current ]] || fail "current theme migration removes legacy config state"
|
||||
grep -Fq '~/.local/state/omarchy/current/theme/alacritty.toml' "$MIGRATION_TMPDIR/.config/alacritty/alacritty.toml" || fail "current theme migration updates alacritty import"
|
||||
grep -Fq '../../.local/state/omarchy/current/theme/hyprland-preview-share-picker.css' "$MIGRATION_TMPDIR/.config/hyprland-preview-share-picker/config.yaml" || fail "current theme migration updates relative stylesheet"
|
||||
grep -Fq '/.local/state/?.lua;' "$MIGRATION_TMPDIR/.config/hypr/hyprland.lua" || fail "current theme migration keeps Hyprland theme modules discoverable"
|
||||
[[ $(readlink "$MIGRATION_TMPDIR/.config/btop/themes/current.theme") == "$MIGRATION_TMPDIR/.local/state/omarchy/current/theme/btop.theme" ]] || fail "current theme migration updates btop symlink"
|
||||
pass "current theme migration moves state and rewrites shipped references"
|
||||
|
||||
make_tmpdir NVIM_MIGRATION_TMPDIR
|
||||
nvim_theme_link="$NVIM_MIGRATION_TMPDIR/.config/nvim/lua/plugins/theme.lua"
|
||||
nvim_expected_target="../../../../.local/state/omarchy/current/theme/neovim.lua"
|
||||
nvim_expected_resolved_target="$NVIM_MIGRATION_TMPDIR/.local/state/omarchy/current/theme/neovim.lua"
|
||||
mkdir -p \
|
||||
"$(dirname "$nvim_theme_link")" \
|
||||
"$NVIM_MIGRATION_TMPDIR/.config/omarchy/current/theme" \
|
||||
"$NVIM_MIGRATION_TMPDIR/.local/state/omarchy/current/theme"
|
||||
touch "$NVIM_MIGRATION_TMPDIR/.local/state/omarchy/current/theme/neovim.lua"
|
||||
for nvim_legacy_target in \
|
||||
"../../../omarchy/current/theme/neovim.lua" \
|
||||
"$NVIM_MIGRATION_TMPDIR/.config/omarchy/current/theme/neovim.lua"; do
|
||||
ln -sfn "$nvim_legacy_target" "$nvim_theme_link"
|
||||
HOME="$NVIM_MIGRATION_TMPDIR" bash -euo pipefail "$ROOT/migrations/1781158082.sh" >/dev/null
|
||||
nvim_actual_target=$(readlink "$nvim_theme_link")
|
||||
nvim_resolved_target=$(readlink -f "$nvim_theme_link")
|
||||
[[ $nvim_actual_target == $nvim_expected_target ]] || fail "nvim theme migration updates theme symlink"
|
||||
[[ $nvim_resolved_target == $nvim_expected_resolved_target ]] || fail "nvim theme migration points to current theme"
|
||||
done
|
||||
pass "nvim theme migration relinks current theme"
|
||||
|
||||
for nvim_legacy_target in \
|
||||
"../../../omarchy/current/theme/neovim.lua" \
|
||||
"../../../../.config/omarchy/current/theme/neovim.lua" \
|
||||
"~/.config/omarchy/current/theme/neovim.lua" \
|
||||
"$NVIM_MIGRATION_TMPDIR/.config/omarchy/current/theme/neovim.lua"; do
|
||||
ln -sfn "$nvim_legacy_target" "$nvim_theme_link"
|
||||
HOME="$NVIM_MIGRATION_TMPDIR" bash -euo pipefail "$ROOT/migrations/1785002349.sh" >/dev/null
|
||||
nvim_actual_target=$(readlink "$nvim_theme_link")
|
||||
nvim_resolved_target=$(readlink -f "$nvim_theme_link")
|
||||
[[ $nvim_actual_target == $nvim_expected_target ]] || fail "nvim theme repair migration updates $nvim_legacy_target"
|
||||
[[ $nvim_resolved_target == $nvim_expected_resolved_target ]] || fail "nvim theme repair migration points to current theme"
|
||||
done
|
||||
|
||||
HOME="$NVIM_MIGRATION_TMPDIR" bash -euo pipefail "$ROOT/migrations/1785002349.sh" >/dev/null
|
||||
[[ $(readlink "$nvim_theme_link") == $nvim_expected_target ]] || fail "nvim theme repair migration is idempotent"
|
||||
|
||||
touch "$NVIM_MIGRATION_TMPDIR/custom-theme.lua"
|
||||
ln -sfn "../../../../custom-theme.lua" "$nvim_theme_link"
|
||||
HOME="$NVIM_MIGRATION_TMPDIR" bash -euo pipefail "$ROOT/migrations/1785002349.sh" >/dev/null
|
||||
[[ $(readlink "$nvim_theme_link") == "../../../../custom-theme.lua" ]] || fail "nvim theme repair migration leaves custom symlinks alone"
|
||||
pass "nvim theme repair migration relinks every legacy spelling"
|
||||
|
||||
make_tmpdir HYPR_MIGRATION_TMPDIR
|
||||
mkdir -p "$HYPR_MIGRATION_TMPDIR/.config/hypr"
|
||||
cat >"$HYPR_MIGRATION_TMPDIR/.config/hypr/hyprland.lua" <<'LUA'
|
||||
-- Learn how to configure Hyprland: https://wiki.hypr.land/Configuring/Start/
|
||||
|
||||
-- Load user modules from ~/.config and Omarchy defaults from $OMARCHY_PATH.
|
||||
package.path = os.getenv("HOME")
|
||||
.. "/.config/?.lua;"
|
||||
.. (os.getenv("OMARCHY_PATH") or (os.getenv("HOME") .. "/.local/share/omarchy"))
|
||||
.. "/?.lua;"
|
||||
.. package.path
|
||||
|
||||
-- All Omarchy default setups
|
||||
require("default.hypr.omarchy")
|
||||
|
||||
-- Add any other personal Hyprland configuration below.
|
||||
o.window("Example", { workspace = "1" })
|
||||
LUA
|
||||
HOME="$HYPR_MIGRATION_TMPDIR" bash -euo pipefail "$ROOT/migrations/1781063758.sh" >/dev/null
|
||||
grep -Fq 'dofile((os.getenv("OMARCHY_PATH") or "/usr/share/omarchy") .. "/default/hypr/bootstrap.lua")' "$HYPR_MIGRATION_TMPDIR/.config/hypr/hyprland.lua" || fail "hyprland bootstrap migration adds bootstrap"
|
||||
! grep -Fq 'package.path = os.getenv("HOME")' "$HYPR_MIGRATION_TMPDIR/.config/hypr/hyprland.lua" || fail "hyprland bootstrap migration removes legacy path block"
|
||||
grep -Fq 'o.window("Example", { workspace = "1" })' "$HYPR_MIGRATION_TMPDIR/.config/hypr/hyprland.lua" || fail "hyprland bootstrap migration preserves custom config"
|
||||
pass "hyprland bootstrap migration updates stale user entrypoint"
|
||||
|
||||
cp "$NEXT_THEME/colors.toml" "$CURRENT_THEME/colors.toml"
|
||||
cp "$NEXT_THEME/vscode-theme.json" "$CURRENT_THEME/vscode-theme.json"
|
||||
|
||||
|
||||
Reference in new issue
Block a user