Exemple #1
0
    def test_installed_first(self):
        """
        Test installed version come first, even before higher version.
        """
        packages = [self.mkl_10_3_0, self.mkl_10_4_0]
        installed_packages = [P("mkl-10.4.0")]
        repository = Repository(packages)
        installed_repository = Repository(installed_packages)
        pool = Pool([repository, installed_repository])
        policy = DefaultPolicy()

        installed_map = OrderedDict()
        for p in installed_packages:
            installed_map[p.id] = p
        package_queues = policy._compute_prefered_packages_installed_first(
            pool, installed_map, [p.id for p in packages + installed_packages])

        r_package_queues = OrderedDict()
        r_package_queues[six.u("mkl")] = collections.deque(
            p.id for p in installed_packages + packages)

        self.assertEqual(r_package_queues, package_queues)
Exemple #2
0
    def test_installed_first(self):
        """
        Test installed version come first, even before higher version.
        """
        packages = [self.mkl_10_3_0,
                    self.mkl_10_4_0]
        installed_packages = [P("mkl-10.4.0")]
        repository = Repository(packages)
        installed_repository = Repository(installed_packages)
        pool = Pool([repository, installed_repository])
        policy = DefaultPolicy()

        installed_map = OrderedDict()
        for p in installed_packages:
            installed_map[p.id] = p
        package_queues = policy._compute_prefered_packages_installed_first(
                pool, installed_map, [p.id for p in packages + installed_packages])

        r_package_queues = OrderedDict()
        r_package_queues[six.u("mkl")] = collections.deque(p.id for p in installed_packages + packages)

        self.assertEqual(r_package_queues, package_queues)
Exemple #3
0
    def test_multiple_providers(self):
        """Test package queues with different packages providing the same
        package."""
        packages = [self.numpy_1_6_0, self.numpy_1_6_1, self.numpy_1_7_1,
                    self.nomkl_numpy_1_6_0,
                    self.nomkl_numpy_1_6_1,
                    self.nomkl_numpy_1_7_1]
        repository = Repository(packages)
        pool = Pool([repository])

        policy = DefaultPolicy()
        package_queues = policy._compute_prefered_packages_installed_first(
                pool, {}, [p.id for p in packages])

        r_package_queues = OrderedDict()
        r_package_queues[six.u("numpy")] = collections.deque([
            self.numpy_1_6_0.id, self.numpy_1_6_1.id, self.numpy_1_7_1.id])
        r_package_queues[six.u("nomkl_numpy")] = collections.deque([
            self.nomkl_numpy_1_6_0.id, self.nomkl_numpy_1_6_1.id,
            self.nomkl_numpy_1_7_1.id])

        self.assertEqual(r_package_queues, package_queues)
Exemple #4
0
    def test_multiple_providers(self):
        """Test package queues with different packages providing the same
        package."""
        packages = [
            self.numpy_1_6_0, self.numpy_1_6_1, self.numpy_1_7_1,
            self.nomkl_numpy_1_6_0, self.nomkl_numpy_1_6_1,
            self.nomkl_numpy_1_7_1
        ]
        repository = Repository(packages)
        pool = Pool([repository])

        policy = DefaultPolicy()
        package_queues = policy._compute_prefered_packages_installed_first(
            pool, {}, [p.id for p in packages])

        r_package_queues = OrderedDict()
        r_package_queues[six.u("numpy")] = collections.deque(
            [self.numpy_1_6_0.id, self.numpy_1_6_1.id, self.numpy_1_7_1.id])
        r_package_queues[six.u("nomkl_numpy")] = collections.deque([
            self.nomkl_numpy_1_6_0.id, self.nomkl_numpy_1_6_1.id,
            self.nomkl_numpy_1_7_1.id
        ])

        self.assertEqual(r_package_queues, package_queues)