From a1b3f72f35afe3672b7f1fec1ba862120283f44a Mon Sep 17 00:00:00 2001 From: Pascal Rigaux Date: Mon, 25 Feb 2008 09:30:32 +0000 Subject: add a test case for "sort choices on virtual package by provided version (#12645)" --- t/data/SPECS/best-versioned-provide/a1.spec | 14 ++++++++++ t/data/SPECS/best-versioned-provide/a_cc.spec | 14 ++++++++++ t/data/SPECS/best-versioned-provide/a_dd.spec | 14 ++++++++++ t/data/SPECS/best-versioned-provide/a_ee.spec | 14 ++++++++++ t/data/SPECS/best-versioned-provide/b1.spec | 16 +++++++++++ t/data/SPECS/best-versioned-provide/b2.spec | 16 +++++++++++ t/data/SPECS/best-versioned-provide/b3.spec | 16 +++++++++++ t/superuser--best-versioned-provide.t | 39 +++++++++++++++++++++++++++ 8 files changed, 143 insertions(+) create mode 100644 t/data/SPECS/best-versioned-provide/a1.spec create mode 100644 t/data/SPECS/best-versioned-provide/a_cc.spec create mode 100644 t/data/SPECS/best-versioned-provide/a_dd.spec create mode 100644 t/data/SPECS/best-versioned-provide/a_ee.spec create mode 100644 t/data/SPECS/best-versioned-provide/b1.spec create mode 100644 t/data/SPECS/best-versioned-provide/b2.spec create mode 100644 t/data/SPECS/best-versioned-provide/b3.spec create mode 100644 t/superuser--best-versioned-provide.t (limited to 't') diff --git a/t/data/SPECS/best-versioned-provide/a1.spec b/t/data/SPECS/best-versioned-provide/a1.spec new file mode 100644 index 00000000..8ac191ae --- /dev/null +++ b/t/data/SPECS/best-versioned-provide/a1.spec @@ -0,0 +1,14 @@ +Summary: x +Name: a1 +Version: 1 +Release: 1 +License: x +Group: x +Url: x +Requires: cc +BuildRoot: %{_tmppath}/%{name} + +%description +x + +%files diff --git a/t/data/SPECS/best-versioned-provide/a_cc.spec b/t/data/SPECS/best-versioned-provide/a_cc.spec new file mode 100644 index 00000000..dd55a9d8 --- /dev/null +++ b/t/data/SPECS/best-versioned-provide/a_cc.spec @@ -0,0 +1,14 @@ +Summary: x +Name: a_cc +Version: 1 +Release: 1 +License: x +Group: x +Url: x +Requires: cc +BuildRoot: %{_tmppath}/%{name} + +%description +x + +%files diff --git a/t/data/SPECS/best-versioned-provide/a_dd.spec b/t/data/SPECS/best-versioned-provide/a_dd.spec new file mode 100644 index 00000000..fa7640f2 --- /dev/null +++ b/t/data/SPECS/best-versioned-provide/a_dd.spec @@ -0,0 +1,14 @@ +Summary: x +Name: a_dd +Version: 1 +Release: 1 +License: x +Group: x +Url: x +Requires: dd +BuildRoot: %{_tmppath}/%{name} + +%description +x + +%files diff --git a/t/data/SPECS/best-versioned-provide/a_ee.spec b/t/data/SPECS/best-versioned-provide/a_ee.spec new file mode 100644 index 00000000..17eaec22 --- /dev/null +++ b/t/data/SPECS/best-versioned-provide/a_ee.spec @@ -0,0 +1,14 @@ +Summary: x +Name: a_ee +Version: 1 +Release: 1 +License: x +Group: x +Url: x +Requires: ee +BuildRoot: %{_tmppath}/%{name} + +%description +x + +%files diff --git a/t/data/SPECS/best-versioned-provide/b1.spec b/t/data/SPECS/best-versioned-provide/b1.spec new file mode 100644 index 00000000..01612ea3 --- /dev/null +++ b/t/data/SPECS/best-versioned-provide/b1.spec @@ -0,0 +1,16 @@ +Summary: x +Name: b1 +Version: 1 +Release: 1 +License: x +Group: x +Url: x +Provides: cc = 1 +Provides: dd = 2 +Provides: ee = 3 +BuildRoot: %{_tmppath}/%{name} + +%description +x + +%files diff --git a/t/data/SPECS/best-versioned-provide/b2.spec b/t/data/SPECS/best-versioned-provide/b2.spec new file mode 100644 index 00000000..78e96540 --- /dev/null +++ b/t/data/SPECS/best-versioned-provide/b2.spec @@ -0,0 +1,16 @@ +Summary: x +Name: b2 +Version: 1 +Release: 1 +License: x +Group: x +Url: x +Provides: cc = 2 +Provides: dd = 3 +Provides: ee = 1 +BuildRoot: %{_tmppath}/%{name} + +%description +x + +%files diff --git a/t/data/SPECS/best-versioned-provide/b3.spec b/t/data/SPECS/best-versioned-provide/b3.spec new file mode 100644 index 00000000..e6aea576 --- /dev/null +++ b/t/data/SPECS/best-versioned-provide/b3.spec @@ -0,0 +1,16 @@ +Summary: x +Name: b3 +Version: 1 +Release: 1 +License: x +Group: x +Url: x +Provides: cc = 3 +Provides: dd = 1 +Provides: ee = 2 +BuildRoot: %{_tmppath}/%{name} + +%description +x + +%files diff --git a/t/superuser--best-versioned-provide.t b/t/superuser--best-versioned-provide.t new file mode 100644 index 00000000..a11a9df1 --- /dev/null +++ b/t/superuser--best-versioned-provide.t @@ -0,0 +1,39 @@ +#!/usr/bin/perl + +# a_cc requires cc +# a_dd requires dd +# a_ee requires ee +# +# b1 provides cc = 1, dd = 2, ee = 3 +# b2 provides cc = 2, dd = 3, ee = 1 +# b3 provides cc = 3, dd = 1, ee = 2 +# +# so a_cc should require b3 +# a_dd should require b2 +# a_ee should require b1 +# +# (cf mdvbz #12645) +# +use strict; +use lib '.', 't'; +use helper; +use Expect; +use urpm::util; +use Test::More 'no_plan'; + +need_root_and_prepare(); + +my $medium_name = 'best-versioned-provide'; + +urpmi_addmedia("$medium_name $::pwd/media/$medium_name"); + +test('a_cc', 'b3'); +test('a_dd', 'b2'); +test('a_ee', 'b1'); + +sub test { + my ($to_install, $should_be_prefered) = @_; + + urpmi("--auto $to_install"); + check_installed_and_remove($to_install, $should_be_prefered); +} -- cgit v1.2.1