Exemplo n.º 1
0
 def test_list_release_choices(self):
     releases = [make_rpc_release() for _ in range(3)]
     osystem = make_rpc_osystem(releases=releases)
     choices = [
         self.make_release_choice(osystem, release) for release in releases
     ]
     self.assertItemsEqual(
         choices,
         list_release_choices(list_all_usable_releases([osystem]),
                              include_default=False))
Exemplo n.º 2
0
 def test_list_release_choices_includes_requires_key_asterisk(self):
     factory.make_BootResource(name='windows/win2016')
     releases = list_all_usable_releases()['windows']
     choices = [
         self.make_release_choice('windows', release, include_asterisk=True)
         for release in releases
         ]
     self.assertItemsEqual(
         choices,
         list_release_choices(
             list_all_usable_releases(), include_default=False))
Exemplo n.º 3
0
 def test_list_release_choices(self):
     for _ in range(3):
         factory.make_BootResource(name='custom/%s' % factory.make_name())
     choices = [
         self.make_release_choice('custom', release)
         for release in list_all_usable_releases()['custom']
         ]
     self.assertItemsEqual(
         choices,
         list_release_choices(
             list_all_usable_releases(), include_default=False))
Exemplo n.º 4
0
 def test_list_release_choices_sorts(self):
     releases = [make_rpc_release() for _ in range(3)]
     osystem = make_rpc_osystem(releases=releases)
     choices = [
         self.make_release_choice(osystem, release)
         for release in sorted(releases, key=itemgetter('title'))
     ]
     self.assertEqual(
         choices,
         list_release_choices(list_all_usable_releases([osystem]),
                              include_default=False))
Exemplo n.º 5
0
 def test_list_release_choices_sorts(self):
     for _ in range(3):
         factory.make_BootResource(name='custom/%s' % factory.make_name())
     releases = list_all_usable_releases()['custom']
     choices = [
         self.make_release_choice('custom', release)
         for release in sorted(releases, key=itemgetter('title'))
         ]
     self.assertEqual(
         choices,
         list_release_choices(
             list_all_usable_releases(), include_default=False))
Exemplo n.º 6
0
 def osinfo(self, params):
     """Return all available operating systems and releases information."""
     releases = list_all_usable_releases()
     osystems = list_all_usable_osystems(releases)
     kernels = list_all_usable_hwe_kernels(releases)
     return {
         "osystems": list_osystem_choices(osystems, include_default=False),
         "releases": list_release_choices(releases, include_default=False),
         "kernels": kernels,
         "default_osystem": Config.objects.get_config("default_osystem"),
         "default_release":
         Config.objects.get_config("default_distro_series"),
     }
Exemplo n.º 7
0
 def test_list_release_choices_includes_requires_key_asterisk(self):
     releases = [
         make_rpc_release(requires_license_key=True) for _ in range(3)
     ]
     osystem = make_rpc_osystem(releases=releases)
     choices = [
         self.make_release_choice(osystem, release, include_asterisk=True)
         for release in releases
     ]
     self.assertItemsEqual(
         choices,
         list_release_choices(list_all_usable_releases([osystem]),
                              include_default=False))
Exemplo n.º 8
0
 def test_list_release_choices_fallsback_to_name(self):
     for _ in range(3):
         factory.make_BootResource(name="custom/%s" % factory.make_name())
     releases = list_all_usable_releases()["custom"]
     for release in releases:
         release["title"] = ""
     choices = [
         self.make_release_choice("custom", release) for release in releases
     ]
     self.assertItemsEqual(
         choices,
         list_release_choices(list_all_usable_releases(),
                              include_default=False),
     )
Exemplo n.º 9
0
 def test_list_release_with_missing_title(self):
     releases = [make_rpc_release(name="xenial"), make_rpc_release()]
     # Simulate missing title
     releases[-1]["title"] = None
     bogus_release_name = releases[-1]["name"]
     for release in releases:
         factory.make_BootResource(
             name="ubuntu/" + release["name"],
             rtype=BOOT_RESOURCE_TYPE.SYNCED,
         )
     self.assertEqual(
         [
             ("ubuntu/xenial", 'Ubuntu 16.04 LTS "Xenial Xerus"'),
             ("ubuntu/" + bogus_release_name, bogus_release_name),
         ],
         list_release_choices(list_all_usable_releases(),
                              include_default=False),
     )
Exemplo n.º 10
0
 def test_list_release_choices_doesnt_include_default(self):
     self.assertEqual([], list_release_choices({}, include_default=False))
Exemplo n.º 11
0
 def test_list_release_choices_includes_default(self):
     self.assertEqual(
         [("", "Default OS Release")],
         list_release_choices({}, include_default=True),
     )