test/remove.sh
author ali <j.a.harlow@letterboxes.org>
Tue Aug 18 14:04:11 2009 +0100 (2009-08-18)
changeset 384 35aa26867cfd
parent 371 d7eea3164151
child 410 6c691def7607
permissions -rwxr-xr-x
Release version 0.2
ali@363
     1
#!/bin/sh
ali@369
     2
fs_check_file()
ali@369
     3
{
ali@369
     4
    if [ ! -e "$RAZOR_ROOT$1" ]; then 
ali@369
     5
	echo $1: Not in filesystem >&2
ali@369
     6
	ls -R "$RAZOR_ROOT" >&2
ali@369
     7
	exit 1
ali@369
     8
    fi
ali@369
     9
}
ali@369
    10
fs_check_no_file()
ali@369
    11
{
ali@369
    12
    if [ -e "$RAZOR_ROOT$1" ]; then 
ali@369
    13
	echo $1: Still in filesystem >&2
ali@369
    14
	exit 1
ali@369
    15
    fi
ali@369
    16
}
ali@363
    17
check_file()
ali@363
    18
{
ali@363
    19
    ../src/razor list-files | grep -x "$1" > /dev/null
ali@363
    20
    if [ $? -ne 0 ]; then
ali@363
    21
	echo $1: Not in database >&2
ali@363
    22
	../src/razor list-files >&2
ali@363
    23
	exit 1
ali@363
    24
    fi
ali@363
    25
    ../src/razor list-files "$1" | grep -x "$1" > /dev/null
ali@363
    26
    if [ $? -ne 0 ]; then
ali@363
    27
	echo $1: Not seen by patterned list >&2
ali@363
    28
	../src/razor list-files "$1" >&2
ali@363
    29
	exit 1
ali@363
    30
    fi
ali@363
    31
    pkgs=`../src/razor list-file-packages "$1"`
ali@363
    32
    if [ -z "$pkgs" ]; then
ali@363
    33
	echo $1: Not owned by any package >&2
ali@363
    34
	../src/razor list-file-packages "$1"
ali@363
    35
	exit 1
ali@363
    36
    fi
ali@363
    37
    for nevra in "$pkgs"; do
ali@363
    38
	name=`echo $nevra | sed 's/\-.*$//'`
ali@363
    39
	../src/razor list-package-files "$name" | grep -x "$1" > /dev/null
ali@363
    40
	if [ $? -ne 0 ]; then
ali@363
    41
	    echo $1: Not in database for package $name >&2
ali@363
    42
	    ../src/razor list-package-files "$name"
ali@363
    43
	    exit 1
ali@363
    44
	fi
ali@363
    45
    done
ali@369
    46
    fs_check_file $1
ali@363
    47
}
ali@363
    48
check_no_file()
ali@363
    49
{
ali@363
    50
    ../src/razor list-files | grep -x "$1" > /dev/null
ali@363
    51
    if [ $? -eq 0 ]; then
ali@363
    52
	echo $1: Still in database >&2
ali@363
    53
	exit 1
ali@363
    54
    fi
ali@369
    55
    fs_check_no_file $1
ali@363
    56
}
ali@363
    57
export RAZOR_ROOT=`mktemp -dt` || exit 1
ali@363
    58
../src/razor init || exit 1
ali@363
    59
export YUM_URL="file://localhost/`pwd`"
ali@363
    60
../src/razor import-yum || exit 1
ali@372
    61
../src/razor install --relocate /usr=/opt zip || exit 1
ali@372
    62
fs_check_file /opt/var/lib/zip/data.zap
ali@363
    63
../src/razor remove zip || exit 1
ali@372
    64
check_file /opt/bin/zap
ali@372
    65
check_no_file /opt/bin/zip
ali@372
    66
fs_check_no_file /opt/var/lib/zip/data.zap
ali@372
    67
../src/razor install --relocate /usr=/opt zsh || exit 1
ali@372
    68
../src/razor install --relocate /usr=/opt zsh2 || exit 1
ali@363
    69
../src/razor remove zsh || exit 1
ali@363
    70
check_file /etc/zsh.conf
ali@372
    71
check_no_file /opt/bin/zsh
ali@372
    72
check_no_file /opt/var/lib/zsh/data.zip
ali@372
    73
../src/razor install --relocate /usr=/opt zsh2 || exit 1
ali@372
    74
fs_check_file /opt/var/lib/zip/data.zap
ali@371
    75
../src/razor remove zsh2 zip || exit 1
ali@372
    76
fs_check_no_file /opt/var/lib/zip/data.zap
ali@363
    77
rm -rf "$RAZOR_ROOT"