]> git.scottworley.com Git - pinch/blobdiff - tests/multi-update.sh
Allow more specific invalid symlinks
[pinch] / tests / multi-update.sh
index 24c22bc18eaa1dee6a54904e653309d0efb8d0a1..5d191ecee62e7fd723346c1e7e09f61c2b948596 100755 (executable)
@@ -1,38 +1,24 @@
 #!/bin/sh
 
 #!/bin/sh
 
-set -e
-
-repo_dir="`mktemp -d`"
-repo="$repo_dir/repo"
-git init "$repo"
-(
-  cd "$repo"
-  echo Contents > test-file
-  git add test-file
-  git commit -m 'Commit message'
-)
-
-conf1="`mktemp`"
-cat > "$conf1" <<EOF
-[foo]
-git_repo = file://$repo
-git_ref = master
-EOF
+. ./tests/lib/test-setup.sh
+
+foo_setup
 
 conf2="`mktemp`"
 cat > "$conf2" <<EOF
 [bar]
 
 conf2="`mktemp`"
 cat > "$conf2" <<EOF
 [bar]
+type = alias
 alias_of = foo
 EOF
 
 alias_of = foo
 EOF
 
-python3 ./pinch.py pin "$conf1"
+python3 ./pinch.py pin "$conf"
 python3 ./pinch.py pin "$conf2"
 
 python3 ./pinch.py pin "$conf2"
 
-actual_env_command=`python3 ./pinch.py update --dry-run "$conf1" "$conf2"`
+actual_env_command=`python3 ./pinch.py update --dry-run "$conf" "$conf2"`
 
 
-rm -rf "$repo_dir" "$conf1" "$conf2"
+rm -rf "$conf2"
 
 
-expected_env_command_RE='^nix-env --profile /nix/var/nix/profiles/per-user/[^/]+/channels --show-trace --file '\''<nix/unpack-channel.nix>'\'' --install --from-expression '\''f: f \{ name = "(repo-[0-9]{10}-[0-9a-f]{11})"; channelName = "bar"; src = builtins.storePath "/nix/store/.{32}-\1.tar.xz"; \}'\'' '\''f: f \{ name = "\1"; channelName = "foo"; src = builtins.storePath "/nix/store/.{32}-\1.tar.xz"; \}'\''$'
+expected_env_command_RE='^nix-env --profile /nix/var/nix/profiles/per-user/[^/]+/channels --show-trace --file '\''<nix/unpack-channel.nix>'\'' --install --remove-all (-I pinch_profile=/nix/var/nix/profiles/per-user/[^/]+/channels -I pinch_profile_manifest=/nix/store/.{32}-env-manifest.nix )?-I pinch_tarball_for_(repo-[0-9]{10}-[0-9a-f]{11})=('"$NIX_STORE_DIR"'/.{32}-\2.tar.xz) --from-expression '\''f: f \{ name = "\2"; channelName = "bar"; src = builtins.storePath "\3"; \}'\'' '\''f: f \{ name = "\2"; channelName = "foo"; src = builtins.storePath "\3"; \}'\''$'
 
 if echo "$actual_env_command" | egrep "$expected_env_command_RE" > /dev/null;then
   echo PASS
 
 if echo "$actual_env_command" | egrep "$expected_env_command_RE" > /dev/null;then
   echo PASS