summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2012-02-24 11:13:31 +0200
committerTimo Teräs <timo.teras@iki.fi>2012-02-24 11:13:31 +0200
commitd420d4114863fadc6458b489cff32b3d3ab61349 (patch)
tree2963f3bcffe7659ddc0b251cff604bb94be8b53a /test
parente128c95fdfe8293c8838551249c7dec20aa91818 (diff)
downloadapk-tools-d420d4114863fadc6458b489cff32b3d3ab61349.tar.bz2
apk-tools-d420d4114863fadc6458b489cff32b3d3ab61349.tar.xz
solver: non preferred actions are worse then non preferred pinning
Otherwise we might start to change packages unexpectedly when not upgrading. This also fixes some other things the solver might've decided to do. Add also few test cases to detect bad behaviour.
Diffstat (limited to 'test')
-rw-r--r--test/pinning.installed220
-rw-r--r--test/pinning8.test11
-rw-r--r--test/pinning9.test8
3 files changed, 39 insertions, 0 deletions
diff --git a/test/pinning.installed2 b/test/pinning.installed2
new file mode 100644
index 0000000..c41ddf7
--- /dev/null
+++ b/test/pinning.installed2
@@ -0,0 +1,20 @@
+C:Q1eVpkasfqZAukAXFYbgwt4xffZWU=
+P:a
+V:3
+S:1
+I:1
+D:b
+
+C:Q1hdUpqRv5mYgJEqW52UmVsv23ysE=
+P:b
+V:3
+S:1
+I:1
+
+C:Q1eVpkasfqZAukAXFYbg324xAt4WU=
+P:c
+V:3
+S:1
+I:1
+D:a>=3
+
diff --git a/test/pinning8.test b/test/pinning8.test
new file mode 100644
index 0000000..84f312b
--- /dev/null
+++ b/test/pinning8.test
@@ -0,0 +1,11 @@
+@ARGS
+--test-repo basic.repo
+--test-repo testing:pinning.repo2
+--test-instdb pinning.installed2
+--test-world "c@testing"
+upgrade -a
+@EXPECT
+(1/3) Downgrading b (3 -> 2)
+(2/3) Upgrading a@testing (3 -> 3.1)
+(3/3) Upgrading c@testing (3 -> 3.1)
+OK: 0 MiB in 3 packages
diff --git a/test/pinning9.test b/test/pinning9.test
new file mode 100644
index 0000000..e9836ff
--- /dev/null
+++ b/test/pinning9.test
@@ -0,0 +1,8 @@
+@ARGS
+--test-repo basic.repo
+--test-repo testing:pinning.repo2
+--test-instdb pinning.installed2
+--test-world "c@testing"
+add
+@EXPECT
+OK: 0 MiB in 3 packages