diff options
author | Michal Minar <miminar@redhat.com> | 2012-10-03 11:32:02 +0200 |
---|---|---|
committer | Michal Minar <miminar@redhat.com> | 2012-10-03 11:54:30 +0200 |
commit | 3c719d73efc1902edfc79d0d6de6b14670addd26 (patch) | |
tree | c3a0acd140138785776ba6ef9f7a8b102e26c4cf /src/yum/test/yum_package.sh | |
parent | c16fe890c8a909b580d47b3aa40a3d94b25b6f6f (diff) | |
download | openlmi-providers-3c719d73efc1902edfc79d0d6de6b14670addd26.tar.gz openlmi-providers-3c719d73efc1902edfc79d0d6de6b14670addd26.tar.xz openlmi-providers-3c719d73efc1902edfc79d0d6de6b14670addd26.zip |
update/delete methods done on YumInstalledPackage
enumerating YumPackage now yields all available packages
- removed update, delete and check_integrity methods
- added Install method
- SoftwareElementState now equals to:
1 ("Installable") - for not installed and available package
2 ("Executable") - for installed package
enumerating YumInstalledPackage now yields all installed packages
- added update, delete and check_integrity methods
Diffstat (limited to 'src/yum/test/yum_package.sh')
-rwxr-xr-x | src/yum/test/yum_package.sh | 84 |
1 files changed, 63 insertions, 21 deletions
diff --git a/src/yum/test/yum_package.sh b/src/yum/test/yum_package.sh index c13cbe4..5d81955 100755 --- a/src/yum/test/yum_package.sh +++ b/src/yum/test/yum_package.sh @@ -4,6 +4,7 @@ dir=`dirname $0` [ -z "$dir" ] && dir=. CLASS_NAME="LMI_YumPackage" +. $dir/test_common.sh declare -A pkg1 pkg2 if [[ "$fedora_release" = 16 ]]; then @@ -84,10 +85,22 @@ test_install() { fi local keys=`make_inst_keys ${nevra_arr[@]}` - local url="$op.${keys}" - echo "creating instance of $CLASS_NAME: $url" - wbemerr ci "$url" "${keys},Release=\"$rel\"" - + local url="$url/$op.${keys}" + + echo "trying to get instance" + if ! wbemerr gi "$url" |& \ + grep -q '\<SoftwareElementState="\?1"\?'; then + echo "wrong SoftwareElementState" + exit 1 + fi + + echo "installing $CLASS_NAME: $url" + if ! wbemerr cm "$url" Install |& \ + grep -q '\<Install:\s*1\s\+Installed'; then + echo "wrong return code" + exit 1 + fi + if is_installed $name; then echo "successful installation" else @@ -95,10 +108,19 @@ test_install() { exit 1 fi + echo "checking get instance" + if ! wbemerr gi "$url" |& \ + grep -q '\<SoftwareElementState="\?2"\?'; then + echo "wrong SoftwareElementState" + exit 1 + fi + echo "testing installation of already installed package" - wbemcli ci "${url}" "${keys},Release=\"rel\"" |& \ - grep -q CIM_ERR_ALREADY_EXISTS && - echo "success" || echo "failed" + if ! wbemcli cm "${url}" Install |& \ + grep -q '\<Install:\s*0\s\+Installed'; then + echo "wrong return code" + exit 1 + fi } test_update() { @@ -126,9 +148,9 @@ test_update() { fi local keys=`make_inst_keys ${nevra_arr[@]}` - local url="$op.${keys}" - echo "intalling older package with $CLASS_NAME: $url" - wbemerr ci "$url" "${keys},Release=\"$rel\"" + local package_url="$url/$op.$keys" + echo "intalling older package with $CLASS_NAME: $package_url" + wbemerr cm "$package_url" Install if is_installed $name; then echo "successful installation" @@ -137,9 +159,15 @@ test_update() { exit 1 fi - echo "updating with ${CLASS_NAME}.Update()" - wbemerr cm "$url" "Update" | grep -q '\<Update:\s*1\s\+Installed' || \ + echo "updating with LMI_YumInstalledPackage.Update()" + + local installed_keys="Software=$op.$keys,System=$computer_system_op" + local installed_url="$url/`make_op LMI_YumInstalledPackage $installed_keys`" + if ! wbemerr cm "$installed_url" "Update" | \ + grep -q '\<Update:\s*1\s\+Installed'; then echo "wrong return code" + exit 1 + fi if is_installed_nevra $name $up_epoch $up_ver $up_rel $arch; then echo "successful update" @@ -149,13 +177,17 @@ test_update() { fi keys=`make_inst_keys $name $up_epoch $up_ver $up_rel $arch` - url2="${op}.${keys}" - echo "trying to update once more to: $url2" - wbemerr cm "$url2" "Update" | grep -q '\<Update:\s*0\s\+Installed' || \ + installed_keys="Software=$op.$keys,System=$computer_system_op" + local installed_url2="$url/`make_op LMI_YumInstalledPackage $installed_keys`" + echo "trying to update once more to: $installed_url2" + if ! wbemerr cm "$installed_url2" "Update" | \ + grep -q '\<Update:\s*0\s\+Installed'; then echo "wrong return code" + exit 1 + fi echo "removing updated package" - wbemerr di "$url2" + wbemerr di "$installed_url2" if is_installed $name; then echo "failed to remove ${name}" exit 1 @@ -167,11 +199,12 @@ test_update() { install_pkg "$@" || exit 1 echo "trying to update to not existing version-release" - wbemerr cm "$url" "Update.Version=\"not-existing-version\"" |& + wbemerr cm "$installed_url" "Update.Version=\"not-existing-version\"" |& grep -q CIM_ERR_NOT_FOUND && echo "ok" || echo "failed" echo "trying to update to the same version-release" - wbemerr cm "$url" "Update.Version=\"${ver}\",Release=\"${rel}\"" | \ + wbemerr cm "$installed_url" \ + "Update.Version=\"${ver}\",Release=\"${rel}\"" | \ grep -q '\<Update:\s*0\s\+Installed' || \ echo "wrong return code" @@ -183,7 +216,8 @@ test_update() { fi echo "trying to update to the specific version" - wbemerr cm "$url" "Update.Version=\"${up_ver}\",Release=\"${up_rel}\"" | + wbemerr cm "$installed_url" \ + "Update.Version=\"${up_ver}\",Release=\"${up_rel}\"" | grep -q '\<Update:\s*1\s\+Installed' || \ echo "wrong return code" @@ -210,13 +244,21 @@ test_remove() { fi local keys=`make_inst_keys ${nevra_arr[@]}` - local url="$op.${keys}" - wbemerr di "$url" + local installed_keys="Software=$op.$keys,System=$computer_system_op" + local installed_url="$url/`make_op LMI_YumInstalledPackage $installed_keys`" + wbemerr di "$installed_url" if is_installed $name; then echo "failed to remove ${name}" + exit 1 else echo "success" fi + local url="$url/$op.$keys" + if ! wbemerr gi "$url" |& \ + grep -q '\<SoftwareElementState="\?1"\?'; then + echo "wrong SoftwareElementState" + exit 1 + fi } |