diff -r 000000000000 -r ea743486ba6f test/remove.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/remove.sh Wed Jun 03 08:26:09 2009 +0100 @@ -0,0 +1,61 @@ +#!/bin/sh +check_file() +{ + ../src/razor list-files | grep -x "$1" > /dev/null + if [ $? -ne 0 ]; then + echo $1: Not in database >&2 + ../src/razor list-files >&2 + exit 1 + fi + ../src/razor list-files "$1" | grep -x "$1" > /dev/null + if [ $? -ne 0 ]; then + echo $1: Not seen by patterned list >&2 + ../src/razor list-files "$1" >&2 + exit 1 + fi + pkgs=`../src/razor list-file-packages "$1"` + if [ -z "$pkgs" ]; then + echo $1: Not owned by any package >&2 + ../src/razor list-file-packages "$1" + exit 1 + fi + for nevra in "$pkgs"; do + name=`echo $nevra | sed 's/\-.*$//'` + ../src/razor list-package-files "$name" | grep -x "$1" > /dev/null + if [ $? -ne 0 ]; then + echo $1: Not in database for package $name >&2 + ../src/razor list-package-files "$name" + exit 1 + fi + done + if [ ! -e "$RAZOR_ROOT$1" ]; then + echo $1: Not in filesystem >&2 + exit 1 + fi +} +check_no_file() +{ + ../src/razor list-files | grep -x "$1" > /dev/null + if [ $? -eq 0 ]; then + echo $1: Still in database >&2 + exit 1 + fi + if [ -e "$RAZOR_ROOT$1" ]; then + echo $1: Still in filesystem >&2 + exit 1 + fi +} +export RAZOR_ROOT=`mktemp -dt` || exit 1 +../src/razor init || exit 1 +export YUM_URL="file://localhost/`pwd`" +../src/razor import-yum || exit 1 +../src/razor install zip || exit 1 +../src/razor remove zip || exit 1 +check_file /usr/bin/zap +check_no_file /usr/bin/zip +../src/razor install zsh || exit 1 +../src/razor install zsh2 || exit 1 +../src/razor remove zsh || exit 1 +check_file /etc/zsh.conf +check_no_file /usr/bin/zsh +rm -rf "$RAZOR_ROOT"