Merge pull request #1128 from aurutils/depends-pm
[aurutils.git] / tests / depends
blobbc45f661556a267cd6488cea61e0e5b11940387f
1 #!/bin/bash
2 set -e
3 # multiple attempts for random ordering of hashes
4 n_trials=10
6 err() {
7 echo >&2 "$1"
8 exit 1
11 for t in {1..$n_trials}; do
12 # bitlbee-libpurple-git provides bitlbee
13 out=$(aur depends bitlbee-libpurple-git bitlbee-discord-git --json)
15 if ! [[ $(jq '. | length' <<< "$out") == 2 ]]; then
16 echo >&2 "$out"
17 err '2 dependencies expected (bitlbee-discord-git)'
19 if ! [[ $(jq '."bitlbee-libpurple-git".RequiredBy | length' <<< "$out") == 2 ]]; then
20 echo >&2 "$out"
21 err '2 reverse dependencies expected (bitlbee-libpurple-git)'
23 if ! [[ $(jq '."bitlbee-discord-git".RequiredBy | length' <<< "$out") == 1 ]]; then
24 echo >&2 "$out"
25 err '1 reverse dependencies expected (bitlbee-discord-git)'
28 # bitlbee-discord-git requires bitlbee
29 out=$(aur depends bitlbee-discord-git --json)
31 if ! [[ $(jq '. | length' <<< "$out") == 2 ]]; then
32 echo >&2 "$out"
33 err '2 dependencies expected (bitlbee-discord-git)'
35 if ! [[ $(jq '."bitlbee".RequiredBy | length' <<< "$out") == 2 ]]; then
36 echo >&2 "$out"
37 err '2 reverse dependencies expected (bitlbee)'
39 if ! [[ $(jq '."bitlbee-discord-git".RequiredBy | length' <<< "$out") == 1 ]]; then
40 echo >&2 "$out"
41 err '1 reverse dependencies expected (bitlbee-discord-git)'
44 # TODO: same with --all
45 #out=$(aur depends bitlbee-libpurple-git bitlbee-discord-git --json --all)
47 #out=$(aur depends bitlbee-discord-git --json-all)
49 # TODO: purely virtual dependencies specified on the command-line
51 # TODO: --assume-installed
52 done