first commit
This commit is contained in:
commit
1354db6c39
90 files changed
+13123
No files matched your search
Executable
+42
@@ -0,0 +1,42 @@
|
||||
#!/usr/bin/env bash
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2026 Bryan Joshua Pedini
|
||||
|
||||
# fake apt-cache (unit tests): show / rdepends / policy from data/apt/
|
||||
# shellcheck source=../fakelib.bash
|
||||
. "${BASH_SOURCE[0]%/*}/../fakelib.bash"
|
||||
fake_log "$@"
|
||||
pkgs=()
|
||||
for a in "$@"; do case $a in -*) ;; *) pkgs+=("$a") ;; esac; done
|
||||
verb=${pkgs[0]}
|
||||
pkgs=("${pkgs[@]:1}")
|
||||
case $verb in
|
||||
show)
|
||||
f=$FAKE_DATA/apt/show/${pkgs[0]}
|
||||
if [[ ! -f $f ]] || fake_purged "${pkgs[0]}"; then
|
||||
echo "E: No packages found" >&2
|
||||
exit 100
|
||||
fi
|
||||
cat "$f"
|
||||
;;
|
||||
rdepends)
|
||||
f=$FAKE_DATA/apt/rdepends/${pkgs[0]}
|
||||
if [[ -f $f ]]; then cat "$f"; else printf '%s\nReverse Depends:\n' "${pkgs[0]}"; fi
|
||||
;;
|
||||
policy)
|
||||
# print the stanzas of the requested packages
|
||||
want=" ${pkgs[*]} "
|
||||
show=0
|
||||
while IFS= read -r line; do
|
||||
if [[ $line =~ ^([^ ].*):$ ]]; then
|
||||
if [[ $want == *" ${BASH_REMATCH[1]} "* ]]; then show=1; else show=0; fi
|
||||
fi
|
||||
((show)) && printf '%s\n' "$line"
|
||||
done <"$FAKE_DATA/apt/policy.txt"
|
||||
exit 0
|
||||
;;
|
||||
*)
|
||||
echo "fake apt-cache: unhandled: $*" >&2
|
||||
exit 99
|
||||
;;
|
||||
esac
|
||||
Reference in new issue
Block a user