def test_read_images_from_alias_doc(self, mock_urlopen): config = application.Configuration([]) application.APPLICATION = application.Application(config) from azure.cli.command_modules.vm.custom import list_vm_images file_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'aliases.json') with open(file_path, 'r') as test_file: test_data = test_file.read().encode() mock_read = mock.MagicMock() mock_read.read.return_value = test_data mock_urlopen.return_value = mock_read #action images = list_vm_images() #assert win_images = [i for i in images if i['publisher'] == 'MicrosoftWindowsServer'] self.assertTrue(len(win_images) > 0) ubuntu_image = next(i for i in images if i['publisher'] == 'Canonical') self.assertEqual(ubuntu_image['publisher'], 'Canonical') self.assertEqual(ubuntu_image['offer'], 'UbuntuServer') self.assertEqual(ubuntu_image['urn alias'], 'UbuntuLTS') parts = ubuntu_image['urn'].split(':') self.assertEqual(parts[0], ubuntu_image['publisher']) self.assertEqual(parts[1], ubuntu_image['offer']) self.assertEqual(parts[2], ubuntu_image['sku']) self.assertEqual(parts[3], ubuntu_image['version'])
def test_read_images_from_alias_doc(self, mock_urlopen): config = application.Configuration([]) application.APPLICATION = application.Application(config) from azure.cli.command_modules.vm.custom import list_vm_images file_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'aliases.json') with open(file_path, 'r') as test_file: test_data = test_file.read().encode() mock_read = mock.MagicMock() mock_read.read.return_value = test_data mock_urlopen.return_value = mock_read #action images = list_vm_images() #assert win_images = [i for i in images if i['publisher'] == 'MicrosoftWindowsServer'] self.assertTrue(len(win_images) > 0) ubuntu_image = next(i for i in images if i['publisher'] == 'Canonical') self.assertEqual(ubuntu_image['publisher'], 'Canonical') self.assertEqual(ubuntu_image['offer'], 'UbuntuServer') self.assertEqual(ubuntu_image['urnAlias'], 'UbuntuLTS') parts = ubuntu_image['urn'].split(':') self.assertEqual(parts[0], ubuntu_image['publisher']) self.assertEqual(parts[1], ubuntu_image['offer']) self.assertEqual(parts[2], ubuntu_image['sku']) self.assertEqual(parts[3], ubuntu_image['version'])
def get_kubernetes_version_completion_list(cmd, prefix, namespace, **kwargs): # pylint: disable=unused-argument import re from azure.cli.command_modules.vm.custom import list_vm_images result = list_vm_images(cmd, publisher_name="cncf-upstream", offer="capi", all=True) regex = re.compile(r'k8s-(\d)dot(\d+)dot(\d+)-') def extract_version(sku): m = regex.match(sku) return ".".join(m.groups()) if m else "" return [extract_version(i['sku']) for i in result]
def test_read_images_from_alias_doc(self): from azure.cli.command_modules.vm.custom import list_vm_images cmd = _get_test_cmd() # action images = list_vm_images(cmd) # assert win_images = [i for i in images if i['publisher'] == 'MicrosoftWindowsServer'] self.assertTrue(len(win_images) > 0) ubuntu_image = next(i for i in images if i['publisher'] == 'Canonical') self.assertEqual(ubuntu_image['publisher'], 'Canonical') self.assertEqual(ubuntu_image['offer'], 'UbuntuServer') self.assertEqual(ubuntu_image['urnAlias'], 'UbuntuLTS') parts = ubuntu_image['urn'].split(':') self.assertEqual(parts[0], ubuntu_image['publisher']) self.assertEqual(parts[1], ubuntu_image['offer']) self.assertEqual(parts[2], ubuntu_image['sku']) self.assertEqual(parts[3], ubuntu_image['version'])