def test_attach_existing_datadisk_on_vm(self, mock_vm_set, mock_vm_get): # pylint: disable=line-too-long faked_vhd_uri = 'https://your_stoage_account_name.blob.core.windows.net/vhds/d1.vhd' # stub to get the vm which has no datadisks vm = FakedVM() mock_vm_get.return_value = vm # execute attach_unmanaged_data_disk('rg1', 'vm1', False, faked_vhd_uri, disk_name='d1', caching=CachingTypes.read_only) # assert self.assertTrue(mock_vm_get.called) mock_vm_set.assert_called_once_with(vm) self.assertEqual(len(vm.storage_profile.data_disks), 1) data_disk = vm.storage_profile.data_disks[0] self.assertEqual(CachingTypes.read_only, data_disk.caching) self.assertEqual(DiskCreateOptionTypes.attach, data_disk.create_option) self.assertIsNone(data_disk.image) self.assertEqual(data_disk.lun, 0) self.assertEqual(data_disk.name, 'd1') self.assertEqual(data_disk.vhd.uri, faked_vhd_uri)
def test_attach_new_datadisk_custom_on_vm(self, mock_vm_set, mock_vm_get): # pylint: disable=line-too-long faked_vhd_uri = 'https://your_stoage_account_name.blob.core.windows.net/vhds/d1.vhd' faked_vhd_uri2 = 'https://your_stoage_account_name.blob.core.windows.net/vhds/d2.vhd' # stub to get the vm which has no datadisks existing_disk = DataDisk(lun=1, vhd=faked_vhd_uri, name='d1', create_option=DiskCreateOptionTypes.empty) vm = FakedVM(None, [existing_disk]) mock_vm_get.return_value = vm # execute attach_unmanaged_data_disk('rg1', 'vm1', True, faked_vhd_uri2, None, 'd2', 512, CachingTypes.read_write) # assert self.assertTrue(mock_vm_get.called) mock_vm_set.assert_called_once_with(vm) self.assertEqual(len(vm.storage_profile.data_disks), 2) data_disk = vm.storage_profile.data_disks[1] self.assertEqual(CachingTypes.read_write, data_disk.caching) self.assertEqual(DiskCreateOptionTypes.empty, data_disk.create_option) self.assertIsNone(data_disk.image) self.assertEqual( data_disk.lun, 0 ) # the existing disk has '1', so it verifes the second one be picked as '0' self.assertEqual(data_disk.vhd.uri, faked_vhd_uri2)
def test_attach_new_datadisk_default_on_vm(self, mock_vm_set, mock_vm_get): # pylint: disable=line-too-long faked_vhd_uri = 'https://your_stoage_account_name.blob.core.windows.net/vhds/d1.vhd' # stub to get the vm which has no datadisks vm = FakedVM(None, None) mock_vm_get.return_value = vm # execute attach_unmanaged_data_disk('rg1', 'vm1', True, faked_vhd_uri) # assert self.assertTrue(mock_vm_get.called) mock_vm_set.assert_called_once_with(vm) self.assertEqual(len(vm.storage_profile.data_disks), 1) data_disk = vm.storage_profile.data_disks[0] self.assertIsNone(data_disk.caching) self.assertEqual(data_disk.create_option, DiskCreateOptionTypes.empty) self.assertIsNone(data_disk.image) self.assertEqual(data_disk.lun, 0) self.assertTrue(data_disk.name.startswith('vm1-')) self.assertEqual(data_disk.vhd.uri, faked_vhd_uri)
def test_attach_new_datadisk_custom_on_vm(self, mock_vm_set, mock_vm_get): # pylint: disable=line-too-long faked_vhd_uri = 'https://your_stoage_account_name.blob.core.windows.net/vhds/d1.vhd' faked_vhd_uri2 = 'https://your_stoage_account_name.blob.core.windows.net/vhds/d2.vhd' # stub to get the vm which has no datadisks existing_disk = DataDisk(lun=1, vhd=faked_vhd_uri, name='d1', create_option=DiskCreateOptionTypes.empty) vm = FakedVM(None, [existing_disk]) mock_vm_get.return_value = vm # execute attach_unmanaged_data_disk('rg1', 'vm1', True, faked_vhd_uri2, None, 'd2', 512, CachingTypes.read_write) # assert self.assertTrue(mock_vm_get.called) mock_vm_set.assert_called_once_with(vm) self.assertEqual(len(vm.storage_profile.data_disks), 2) data_disk = vm.storage_profile.data_disks[1] self.assertEqual(CachingTypes.read_write, data_disk.caching) self.assertEqual(DiskCreateOptionTypes.empty, data_disk.create_option) self.assertIsNone(data_disk.image) self.assertEqual(data_disk.lun, 0) # the existing disk has '1', so it verifes the second one be picked as '0' self.assertEqual(data_disk.vhd.uri, faked_vhd_uri2)