From: Pierre Schmitz <pie...@archlinux.de> (cherry picked from commit e84b36059f82edb6d5f9eec1c99695cc80e6fb82) --- db-functions | 2 +- test/cases/db-update.bats | 25 ++++++++++++++++++++++++- 2 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/db-functions b/db-functions index 2629b85..2ef0a44 100644 --- a/db-functions +++ b/db-functions @@ -297,7 +297,7 @@ check_pkgfile() { in_array "${pkgarch}" "${ARCHES[@]}" 'any' || return 1 - if echo "${pkgfile##*/}" | grep "${pkgname}-${pkgver}-${pkgarch}" &>/dev/null; then + if echo "${pkgfile##*/}" | grep "^${pkgname}-${pkgver}-${pkgarch}" &>/dev/null; then return 0 else return 1 diff --git a/test/cases/db-update.bats b/test/cases/db-update.bats index f0bb85b..4163530 100755 --- a/test/cases/db-update.bats +++ b/test/cases/db-update.bats @@ -128,7 +128,6 @@ load ../lib/common done } - @test "add incomplete split package" { skip # commented out with "This is fucking obnoxious" -- abslibre is broken local repo='extra' @@ -191,3 +190,27 @@ load ../lib/common checkRemovedPackage extra pkg-simple-a-1-1-i686.pkg.tar.xz i686 } + +@test "add package with inconsistent version fails" { + local p + releasePackage extra 'pkg-simple-a' 'i686' + + for p in "${STAGING}"/extra/*; do + mv "${p}" "${p/1/2}" + done + + ! db-update >/dev/null 2>&1 + checkRemovedPackage extra 'pkg-simple-a-2-1-i686.pkg.tar.xz' 'i686' +} + +@test "add package with inconsistent name fails" { + local p + releasePackage extra 'pkg-simple-a' 'i686' + + for p in "${STAGING}"/extra/*; do + mv "${p}" "${p/pkg-/foo-pkg-}" + done + + ! db-update >/dev/null 2>&1 + checkRemovedPackage extra 'foo-pkg-simple-a-1-1-i686.pkg.tar.xz' 'i686' +} -- 2.16.2 _______________________________________________ Dev mailing list Dev@lists.parabola.nu https://lists.parabola.nu/mailman/listinfo/dev