def test_from_package_string(self):
        rule = PackageRule.from_string("mkl-11.0.0", self.pool)
        self.assertEqual(rule,
                         PackageRule.from_packages([mkl_11_0_0], self.pool))

        rule = PackageRule.from_string("mkl-10.2.0 | mkl-11.0.0", self.pool)
        self.assertEqual(
            rule, PackageRule.from_packages([mkl_10_2_0, mkl_11_0_0],
                                            self.pool))

        rule = PackageRule.from_string("-mkl-10.2.0 | mkl-11.0.0", self.pool)
        self.assertEqual(
            rule,
            PackageRule([
                PackageNot.from_package(mkl_10_2_0, self.pool),
                PackageLiteral.from_package(mkl_11_0_0, self.pool)
            ], self.pool))

        rule = PackageRule.from_string("-mkl-10.2.0 | -mkl-11.0.0", self.pool)
        self.assertEqual(
            rule,
            PackageRule([
                PackageNot.from_package(mkl_10_2_0, self.pool),
                PackageNot.from_package(mkl_11_0_0, self.pool)
            ], self.pool))
Exemple #2
0
    def test_str_simple(self):
        repository = Repository([P("mkl-10.1.0"),
                                 P("numpy-1.7.0; depends (MKL >= 10.1.0)"),
                                 P("scipy-0.12.0; depends (numpy >= 1.7.0)")])
        pool = Pool([repository])

        rule = PackageRule(pool, [1, 2], "job_install", "scipy")

        self.assertEqual(str(rule), "(+mkl-10.1.0 | +numpy-1.7.0)")

        rule = PackageRule(pool, [-1, 2], "job_install", "scipy")

        self.assertEqual(str(rule), "(-mkl-10.1.0 | +numpy-1.7.0)")
    def test_repr(self):
        rule_repr = repr(
            PackageRule.from_packages([mkl_11_0_0, mkl_10_1_0, mkl_10_2_0],
                                      self.pool))
        self.assertEqual(rule_repr,
                         "(+mkl-10.1.0 | +mkl-10.2.0 | +mkl-11.0.0)")

        rule_repr = repr(PackageRule([PackageNot.from_package(mkl_10_2_0, self.pool)], self.pool) \
                | PackageRule.from_packages([mkl_11_0_0], self.pool))
        self.assertEqual(rule_repr, "(-mkl-10.2.0 | +mkl-11.0.0)")
Exemple #4
0
    def test_str(self):
        rule = PackageRule.from_packages(
            self.pool, [self.mkl_11_0_0, self.mkl_10_1_0, self.mkl_10_2_0],
            None)
        rule_repr = str(rule)
        self.assertEqual(rule_repr,
                         "(+mkl-10.1.0 | +mkl-10.2.0 | +mkl-11.0.0)")

        rule_repr = str(
            PackageRule(self.pool, [-self.mkl_10_2_0.id, self.mkl_11_0_0.id],
                        None))
        self.assertEqual(rule_repr, "(-mkl-10.2.0 | +mkl-11.0.0)")
Exemple #5
0
    def test_ctor_simple(self):
        repository = Repository([P("mkl-10.1.0"),
                                 P("numpy-1.7.0; depends (MKL >= 10.1.0)"),
                                 P("scipy-0.12.0; depends (numpy >= 1.7.0)")])
        pool = Pool([repository])

        rule = PackageRule(pool, [1, 2], "job_install", "scipy")

        self.assertEqual(rule.enabled, True)
        self.assertEqual(rule.literals, [1, 2])
        self.assertEqual(rule.reason, "job_install")
        self.assertEqual(rule.rule_hash, "05cf2")
Exemple #6
0
    def test_simple(self):
        repository = Repository([
            P("mkl-10.1.0"),
            P("numpy-1.7.0; depends (MKL >= 10.1.0)"),
            P("scipy-0.12.0; depends (numpy >= 1.7.0)")
        ])
        pool = Pool([repository])

        rule = PackageRule(pool, [1, 2], "job_install", "scipy")

        rules_set = RulesSet()
        rules_set.add_rule(rule, "package")

        self.assertEqual(len(rules_set), 1)
Exemple #7
0
    def test_from_package_string(self):
        r_rule = PackageRule.from_packages(self.pool, [self.mkl_11_0_0], None)

        rule = PackageRule.from_string(self.pool, "mkl-11.0.0", None)
        self.assertTrue(rule.is_equivalent(r_rule))

        r_rule = PackageRule.from_packages(self.pool,
                                           [self.mkl_10_2_0, self.mkl_11_0_0],
                                           None)
        rule = PackageRule.from_string(self.pool, "mkl-10.2.0 | mkl-11.0.0",
                                       None)
        self.assertTrue(rule.is_equivalent(r_rule))

        r_rule = PackageRule(self.pool,
                             [-self.mkl_10_2_0.id, self.mkl_11_0_0.id], None)
        rule = PackageRule.from_string(self.pool, "-mkl-10.2.0 | mkl-11.0.0",
                                       None)
        self.assertTrue(rule.is_equivalent(r_rule))

        r_rule = PackageRule(self.pool,
                             [-self.mkl_10_2_0.id, -self.mkl_11_0_0.id], None)
        rule = PackageRule.from_string(self.pool, "-mkl-10.2.0 | -mkl-11.0.0",
                                       None)
        self.assertTrue(rule.is_equivalent(r_rule))