Ejemplo n.º 1
0
    def test_rpm_applicable_to_consumer(self):
        rpm = {}
        prof = YumProfiler()
        applicable = prof._is_rpm_applicable(rpm, {})
        self.assertEqual(applicable, False)

        # Test with newer RPM
        # The consumer has already been configured with a profile containing 'emoticons'
        rpm = self.create_profile_entry("emoticons", 0, "0.1", "2", "x86_64", "Test Vendor")
        applicable = prof._is_rpm_applicable(rpm, self.test_consumer_lookup)
        self.assertTrue(applicable)
Ejemplo n.º 2
0
    def test_rpm_applicable_to_consumer(self):
        rpm = {}
        prof = YumProfiler()
        applicable = prof._is_rpm_applicable(rpm, {})
        self.assertEqual(applicable, False)

        # Test with newer RPM
        # The consumer has already been configured with a profile containing 'emoticons'
        rpm = self.create_profile_entry("emoticons", 0, "0.1", "2", "x86_64",
                                        "Test Vendor")
        applicable = prof._is_rpm_applicable(rpm, self.test_consumer_lookup)
        self.assertTrue(applicable)
Ejemplo n.º 3
0
 def test_rpm_applicable_with_profile_containing_duplicate_packages(self):
     """
     If a consumer profile contains multiple rpms with same name and arch (eg. in case of
     kernel rpms), make sure that the applicability calculations take into consideration
     the newest rpm installed.
     """
     consumer_profile = self.get_test_profile_with_duplicate_packages()
     test_consumer_lookup = YumProfiler._form_lookup_table(consumer_profile[TYPE_ID_RPM])
     rpm = self.create_profile_entry("patb", 0, "0.0.2", "1", "x86_64", "Test Vendor")
     yum_profiler = YumProfiler()
     applicable = yum_profiler._is_rpm_applicable(rpm, test_consumer_lookup)
     self.assertFalse(applicable)
     newer_rpm = self.create_profile_entry("patb", 0, "0.0.3", "1", "x86_64", "Test Vendor")
     applicable = yum_profiler._is_rpm_applicable(newer_rpm, test_consumer_lookup)
     self.assertTrue(applicable)
Ejemplo n.º 4
0
 def test_rpm_applicable_with_profile_containing_duplicate_packages(self):
     """
     If a consumer profile contains multiple rpms with same name and arch (eg. in case of
     kernel rpms), make sure that the applicability calculations take into consideration
     the newest rpm installed.
     """
     consumer_profile = self.get_test_profile_with_duplicate_packages()
     test_consumer_lookup = YumProfiler._form_lookup_table(
         consumer_profile[TYPE_ID_RPM])
     rpm = self.create_profile_entry("patb", 0, "0.0.2", "1", "x86_64",
                                     "Test Vendor")
     yum_profiler = YumProfiler()
     applicable = yum_profiler._is_rpm_applicable(rpm, test_consumer_lookup)
     self.assertFalse(applicable)
     newer_rpm = self.create_profile_entry("patb", 0, "0.0.3", "1",
                                           "x86_64", "Test Vendor")
     applicable = yum_profiler._is_rpm_applicable(newer_rpm,
                                                  test_consumer_lookup)
     self.assertTrue(applicable)