1
0
mirror of https://github.com/openSUSE/libsolv.git synced 2026-02-05 12:45:46 +01:00

Add more choicerules tests

This commit is contained in:
Michael Schroeder
2022-03-16 15:16:42 +01:00
parent 871c4936fd
commit ce9dda7d3e
9 changed files with 227 additions and 0 deletions

View File

@@ -0,0 +1,27 @@
#
#Rule #2:
# !A-2-1.noarch [3] (w1)
# B-2-1.noarch [4] (w2)
# C-2-1.noarch [5]
#
# ==> Choice Rule
# !A-2-1.noarch [3] (w1)
# B-2-1.noarch [4] (w2)
#
repo system 0 testtags <inline>
#>=Pkg: B 1 1 noarch
#>=Prv: P = 1
repo available 0 testtags <inline>
#>=Pkg: A 2 1 noarch
#>=Req: P = 2
#>=Pkg: B 2 1 noarch
#>=Prv: P = 2
#>=Pkg: C 2 1 noarch
#>=Prv: P = 2
system i686 rpm system
job install name A
result transaction,problems <inline>
result transaction,problems <inline>
#>install A-2-1.noarch@available
#>upgrade B-1-1.noarch@system B-2-1.noarch@available

View File

@@ -0,0 +1,18 @@
repo system 0 testtags <inline>
#>=Pkg: B 1 1 noarch
#>=Prv: P = 1
repo available 0 testtags <inline>
#>=Pkg: X 1 1 noarch
#>=Pkg: Y 1 1 noarch
#>=Pkg: A 2 1 noarch
#>=Req: P = 2 <IF> (X & Y)
#>=Pkg: B 2 1 noarch
#>=Prv: P = 2
#>=Pkg: C 2 1 noarch
#>=Prv: P = 2
system i686 rpm system
job install name A
result transaction,problems <inline>
result transaction,problems <inline>
#>install A-2-1.noarch@available

View File

@@ -1,3 +1,24 @@
#
# Test that updating package B will update package A
# instead of pulling in new package C
#
#Rule #5:
# !A-2-2.noarch [5] (w1)
# B-2-1.noarch [6] (w2)
# C-2-1.noarch [8]
#Rule #7:
# !A-2-1.noarch [4] (w1)
# B-2-1.noarch [6] (w2)
# C-2-1.noarch [8]
#Rule #8:
# !A-1-1.noarch [2]I (w1)
# B-1-1.noarch [3]I (w2)
# C-1-1.noarch [7]
#
# ==> Choice Rule for #8:
# !A-1-1.noarch [2]I (w1)
# B-1-1.noarch [3]I (w2)
#
repo system 0 testtags <inline>
#>=Pkg: A 1 1 noarch
#>=Req: P = 1

View File

@@ -0,0 +1,47 @@
#
# Test that updating package B will update package A
# instead of pulling in new package C
#
#Rule #5:
# !A-2-2.noarch [5] (w1)
# B-2-1.noarch [6] (w2)
# C-2-1.noarch [8]
#Rule #7:
# !A-2-1.noarch [4] (w1)
# B-2-1.noarch [6] (w2)
# C-2-1.noarch [8]
#Rule #8:
# !A-1-1.noarch [2]I (w1)
# B-1-1.noarch [3]I (w2)
# C-1-1.noarch [7]
#
# ==> Choice Rule for #8:
# !A-1-1.noarch [2]I (w1)
# B-1-1.noarch [3]I (w2)
#
repo system 0 testtags <inline>
#>=Pkg: A 1 1 noarch
#>=Req: P = 1
#>=Pkg: B 1 1 noarch
#>=Prv: P = 1
repo available 0 testtags <inline>
#>=Pkg: A 1 1 noarch
#>=Req: P = 1
#>=Pkg: B 1 1 noarch
#>=Prv: P = 1
#>=Pkg: A 2 1 noarch
#>=Req: P = 2
#>=Pkg: A 2 2 noarch
#>=Req: P = 2
#>=Pkg: B 2 1 noarch
#>=Prv: P = 2
#>=Pkg: C 1 1 noarch
#>=Prv: P = 1
#>=Pkg: C 2 1 noarch
#>=Prv: P = 2
system i686 rpm system
job update name B
result transaction,problems <inline>
#>upgrade A-1-1.noarch@system A-2-2.noarch@available
#>upgrade B-1-1.noarch@system B-2-1.noarch@available

View File

@@ -1,3 +1,19 @@
# Do not block an update because of a choice rule
#
#Rule #3:
# !B-1-1.noarch [4] (w1)
# A-1-1.noarch [2]I (w2)
# Anew-2-1.noarch [6]
#Rule #4:
# !B-1-1.noarch [3]I (w1)
# A-1-1.noarch [2]I (w2)
# Anew-2-1.noarch [6]
#
# ==> No choice rule for Rule#4!
# ==> Choice Rule for #3:
# !B-1-1.noarch [4] (w1)
# A-1-1.noarch [2]I (w2)
#
repo system 0 testtags <inline>
#>=Pkg: A 1 1 noarch
#>=Prv: libA

View File

@@ -0,0 +1,31 @@
# Do not block an update because of a choice rule
#
#Rule #3:
# !B-1-1.noarch [4] (w1)
# A-1-1.noarch [2]I (w2)
# Anew-2-1.noarch [6]
#Rule #4:
# !B-1-1.noarch [3]I (w1)
# A-1-1.noarch [2]I (w2)
# Anew-2-1.noarch [6]
#
# ==> No choice rule for Rule#4!
# ==> Choice Rule for #3:
# !B-1-1.noarch [4] (w1)
# A-1-1.noarch [2]I (w2)
#
repo system 0 testtags <inline>
#>=Pkg: A 1 1 noarch
#>=Prv: libA
#>=Pkg: B 1 1 noarch
#>=Req: libA
repo available 0 testtags <inline>
#>=Pkg: A 2 1 noarch
#>=Pkg: Anew 2 1 noarch
#>=Prv: libA
system i686 rpm system
job update all packages
result transaction,problems <inline>
#>install Anew-2-1.noarch@available
#>upgrade A-1-1.noarch@system A-2-1.noarch@available

View File

@@ -1,3 +1,21 @@
# This tests that A is updated instead of Anew being installed
#
#Rule #4:
# !B-2-2.noarch [11] (w1)
# A-2-2.noarch [9] (w2)
# Anew-2-2.noarch [10]
#Rule #11:
# !B-2-1.noarch [8] (w1)
# A-2-1.noarch [6] (w2)
# Anew-2-1.noarch [7]
#
#Choice Rule for #4:
# !B-2-2.noarch [11] (w1)
# A-2-2.noarch [9] (w2)
#Choice Rule for #11
# !B-2-1.noarch [8] (w1)
# A-2-1.noarch [6] (w2)
#
repo system 0 testtags <inline>
#>=Pkg: A 1 1 noarch
#>=Prv: libA = 1-1

View File

@@ -0,0 +1,21 @@
#
# test that a package split does not update unrelated packages
#
repo system 0 testtags <inline>
#>=Pkg: A 1 1 noarch
#>=Prv: libA
#>=Pkg: B 1 1 noarch
#>=Req: libA
repo available 0 testtags <inline>
#>=Pkg: A 1 1 noarch
#>=Prv: libA
#>=Pkg: A 2 1 noarch
#>=Pkg: Asplit 2 1 noarch
#>=Prv: libA
#>=Pkg: B 2 1 noarch
#>=Req: libA
system i686 rpm system
job update name A
result transaction,problems <inline>
#>install Asplit-2-1.noarch@available
#>upgrade A-1-1.noarch@system A-2-1.noarch@available

View File

@@ -0,0 +1,28 @@
#Rule #4:
# !php-fpm-7.2.24-1.noarch [5] (w1)
# glibc-2.17-325.noarch [2]I (w2)
# libcrypt-4.1.1-6.noarch [7]
#=> no choice rule for #4
#
repo @System 0 testtags <inline>
#>=Pkg: glibc 2.17 325 noarch
#>=Prv: libcrypt
#>=Pkg: php 5.4.16 48 noarch
repo available 0 testtags <inline>
#>=Pkg: php 7.2.24 1 noarch
#>=Rec: php-fpm = 7.2.24-1
#>=Pkg: php-fpm 7.2.24 1 noarch
#>=Req: libcrypt
#>=Pkg: php-fpm 8.0.13 2 noarch
#>=Req: libcrypt
#>=Pkg: libcrypt 4.1.1 6 noarch
#>=Req: libc
#>=Pkg: glibc 2.28 181 noarch
#>=Prv: libc
system i686 rpm @System
job update all packages
result transaction,problems <inline>
#>install libcrypt-4.1.1-6.noarch@available
#>install php-fpm-7.2.24-1.noarch@available
#>upgrade glibc-2.17-325.noarch@@System glibc-2.28-181.noarch@available
#>upgrade php-5.4.16-48.noarch@@System php-7.2.24-1.noarch@available