]>
Commit | Line | Data |
---|---|---|
49d58bdf SW |
1 | #!/bin/sh |
2 | ||
3 | repo_dir="`mktemp -d`" | |
4 | repo="$repo_dir/repo" | |
5 | git init "$repo" | |
6 | ( | |
7 | cd "$repo" | |
8 | echo Contents > test-file | |
9 | git add test-file | |
10 | git commit -m 'Commit message' | |
11 | ) | |
12 | ||
13 | conf="`mktemp`" | |
14 | cat > "$conf" <<EOF | |
15 | [foo] | |
16 | git_repo = file://$repo | |
17 | git_ref = master | |
18 | EOF | |
19 | ||
20 | python3 ./pinch.py pin "$conf" | |
21 | ||
22 | actual_env_command=`python3 ./pinch.py update --dry-run "$conf"` | |
23 | ||
24 | rm -rf "$repo_dir" "$conf" | |
25 | ||
26 | 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 = "foo"; src = builtins.storePath "/nix/store/.{32}-\1.tar.xz"; \}'\''$' | |
27 | ||
28 | if echo "$actual_env_command" | egrep "$expected_env_command_RE" > /dev/null;then | |
29 | echo PASS | |
30 | else | |
31 | echo "Output: $actual_env_command" | |
32 | echo "does not match RE: $expected_env_command_RE" | |
33 | exit 1 | |
34 | fi |