def test_update_profile_presorted_profile(self): """ Test the update_profile() method with a presorted profile. It should not alter it at all. """ profile = [ {'name': 'Package A', 'epoch': 0, 'version': '1.0.1', 'release': '2.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.'}, {'name': 'Package A', 'epoch': 0, 'version': '1.1.0', 'release': '1.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.'}, {'name': 'Package B', 'epoch': 0, 'version': '2.3.9', 'release': '1.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.'}, {'name': 'Package B', 'epoch': 1, 'version': '1.2.1', 'release': '8.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.'}, {'name': 'Package C', 'epoch': 0, 'version': '1.0.0', 'release': '1.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.'}, {'name': 'Package C', 'epoch': 0, 'version': '1.0.0', 'release': '2.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.'}, ] profiler = YumProfiler() # The update_profile() method doesn't use any of the args except for profile and # content_type, so we'll just pass in strings for the others new_profile = profiler.update_profile('consumer', TYPE_ID_RPM, deepcopy(profile), 'config') self.assertEqual(new_profile, profile)
def test_update_profile_with_errata(self): """ Test the update_profile() method with a presorted profile. It should not alter it at all. """ profile = ["one_errata", "two_errata", "three_errata", "four_errata"] profiler = YumProfiler() # The update_profile() method doesn't use any of the args except for profile and # content_type, so we'll just pass in strings for the others # This test just asserts that the profile is returned unaltered new_profile = profiler.update_profile("consumer", TYPE_ID_ERRATA, deepcopy(profile), "config") self.assertEqual(new_profile, profile)
def test_update_profile_with_errata(self): """ Test the update_profile() method with a presorted profile. It should not alter it at all. """ profile = ['one_errata', 'two_errata', 'three_errata', 'four_errata'] profiler = YumProfiler() # The update_profile() method doesn't use any of the args except for profile and # content_type, so we'll just pass in strings for the others # This test just asserts that the profile is returned unaltered new_profile = profiler.update_profile('consumer', TYPE_ID_ERRATA, deepcopy(profile), 'config') self.assertEqual(new_profile, profile)
def test_update_profile_sorts_profile(self): """ Test that the update_profile() method sorts the profile. """ profile = [ { 'name': 'Package A', 'epoch': 0, 'version': '1.0.1', 'release': '2.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.' }, { 'name': 'Package C', 'epoch': 0, 'version': '1.0.0', 'release': '1.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.' }, { 'name': 'Package C', 'epoch': 0, 'version': '1.0.0', 'release': '2.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.' }, { 'name': 'Package A', 'epoch': 0, 'version': '1.1.0', 'release': '1.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.' }, { 'name': 'Package B', 'epoch': 1, 'version': '1.2.1', 'release': '8.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.' }, { 'name': 'Package B', 'epoch': 0, 'version': '2.3.9', 'release': '1.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.' }, ] profiler = YumProfiler() # The update_profile() method doesn't use any of the args except for profile and # content_type, so we'll just pass in strings for the others new_profile = profiler.update_profile('consumer', TYPE_ID_RPM, deepcopy(profile), 'config') expected_profile = [ { 'name': 'Package A', 'epoch': 0, 'version': '1.0.1', 'release': '2.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.' }, { 'name': 'Package A', 'epoch': 0, 'version': '1.1.0', 'release': '1.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.' }, { 'name': 'Package B', 'epoch': 0, 'version': '2.3.9', 'release': '1.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.' }, { 'name': 'Package B', 'epoch': 1, 'version': '1.2.1', 'release': '8.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.' }, { 'name': 'Package C', 'epoch': 0, 'version': '1.0.0', 'release': '1.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.' }, { 'name': 'Package C', 'epoch': 0, 'version': '1.0.0', 'release': '2.el6', 'arch': 'x86_64', 'vendor': 'Red Hat, Inc.' }, ] self.assertEqual(new_profile, expected_profile)
def test_update_profile_sorts_profile(self): """ Test that the update_profile() method sorts the profile. """ profile = [ { "name": "Package A", "epoch": 0, "version": "1.0.1", "release": "2.el6", "arch": "x86_64", "vendor": "Red Hat, Inc.", }, { "name": "Package C", "epoch": 0, "version": "1.0.0", "release": "1.el6", "arch": "x86_64", "vendor": "Red Hat, Inc.", }, { "name": "Package C", "epoch": 0, "version": "1.0.0", "release": "2.el6", "arch": "x86_64", "vendor": "Red Hat, Inc.", }, { "name": "Package A", "epoch": 0, "version": "1.1.0", "release": "1.el6", "arch": "x86_64", "vendor": "Red Hat, Inc.", }, { "name": "Package B", "epoch": 1, "version": "1.2.1", "release": "8.el6", "arch": "x86_64", "vendor": "Red Hat, Inc.", }, { "name": "Package B", "epoch": 0, "version": "2.3.9", "release": "1.el6", "arch": "x86_64", "vendor": "Red Hat, Inc.", }, ] profiler = YumProfiler() # The update_profile() method doesn't use any of the args except for profile and # content_type, so we'll just pass in strings for the others new_profile = profiler.update_profile("consumer", TYPE_ID_RPM, deepcopy(profile), "config") expected_profile = [ { "name": "Package A", "epoch": 0, "version": "1.0.1", "release": "2.el6", "arch": "x86_64", "vendor": "Red Hat, Inc.", }, { "name": "Package A", "epoch": 0, "version": "1.1.0", "release": "1.el6", "arch": "x86_64", "vendor": "Red Hat, Inc.", }, { "name": "Package B", "epoch": 0, "version": "2.3.9", "release": "1.el6", "arch": "x86_64", "vendor": "Red Hat, Inc.", }, { "name": "Package B", "epoch": 1, "version": "1.2.1", "release": "8.el6", "arch": "x86_64", "vendor": "Red Hat, Inc.", }, { "name": "Package C", "epoch": 0, "version": "1.0.0", "release": "1.el6", "arch": "x86_64", "vendor": "Red Hat, Inc.", }, { "name": "Package C", "epoch": 0, "version": "1.0.0", "release": "2.el6", "arch": "x86_64", "vendor": "Red Hat, Inc.", }, ] self.assertEqual(new_profile, expected_profile)