[Kimchi-devel] [PATCH] [Kimchi 9/9] Virt-Viewer launcher: changes after adding libvirt event listening
Daniel Henrique Barboza
dhbarboza82 at gmail.com
Thu Jul 7 17:45:32 UTC 2016
On 07/07/2016 12:25 PM, Lucio Correia wrote:
> My suggestion is to test it with a vm with special characters in name,
> since there is name reading from libvirt in backend.
I'll edit this unit test to use non-ASCII chars in the VM name.
>
> On 07-07-2016 09:57, dhbarboza82 at gmail.com wrote:
>> From: Daniel Henrique Barboza <danielhb at linux.vnet.ibm.com>
>>
>> This patch changes existing tests and add a new test to
>> assert that the latest changes with FirewallManager and
>> libvirt event listening in virtviewerfile.py is working
>> properly.
>>
>> Signed-off-by: Daniel Henrique Barboza <danielhb at linux.vnet.ibm.com>
>> ---
>> tests/test_model.py | 53
>> ++++++++++++++++++++++++++++++++++++++++++++++++++++-
>> 1 file changed, 52 insertions(+), 1 deletion(-)
>>
>> diff --git a/tests/test_model.py b/tests/test_model.py
>> index 1162d2c..44358a5 100644
>> --- a/tests/test_model.py
>> +++ b/tests/test_model.py
>> @@ -371,8 +371,13 @@ class ModelTests(unittest.TestCase):
>> @mock.patch('wok.plugins.kimchi.model.virtviewerfile.'
>> 'VMModel.get_graphics')
>> @mock.patch('wok.plugins.kimchi.model.virtviewerfile.'
>> + 'FirewallManager.add_vm_graphics_port')
>> + @mock.patch('wok.plugins.kimchi.model.virtviewerfile.'
>> + 'VMVirtViewerFileModel.handleVMShutdownPowerOff')
>> + @mock.patch('wok.plugins.kimchi.model.virtviewerfile.'
>> 'VMVirtViewerFileModel._check_if_vm_running')
>> - def test_vm_virtviewerfile_vnc(self, mock_vm_running,
>> mock_get_graphics,
>> + def test_vm_virtviewerfile_vnc(self, mock_vm_running,
>> mock_handleVMOff,
>> + mock_add_port, mock_get_graphics,
>> mock_get_host):
>>
>> mock_get_host.return_value = 'kimchi-test-host'
>> @@ -398,13 +403,21 @@ class ModelTests(unittest.TestCase):
>>
>> mock_get_graphics.assert_called_once_with('kimchi-vm', None)
>> mock_vm_running.assert_called_once_with('kimchi-vm')
>> + mock_handleVMOff.assert_called_once_with('kimchi-vm')
>> + mock_add_port.assert_called_once_with('kimchi-vm', '5999')
>>
>> @mock.patch('wok.plugins.kimchi.model.virtviewerfile._get_request_host')
>> @mock.patch('wok.plugins.kimchi.model.virtviewerfile.'
>> 'VMModel.get_graphics')
>> @mock.patch('wok.plugins.kimchi.model.virtviewerfile.'
>> + 'FirewallManager.add_vm_graphics_port')
>> + @mock.patch('wok.plugins.kimchi.model.virtviewerfile.'
>> + 'VMVirtViewerFileModel.handleVMShutdownPowerOff')
>> + @mock.patch('wok.plugins.kimchi.model.virtviewerfile.'
>> 'VMVirtViewerFileModel._check_if_vm_running')
>> def test_vm_virtviewerfile_spice_passwd(self, mock_vm_running,
>> + mock_handleVMOff,
>> + mock_add_port,
>> mock_get_graphics,
>> mock_get_host):
>>
>> @@ -433,6 +446,8 @@ class ModelTests(unittest.TestCase):
>>
>> mock_get_graphics.assert_called_once_with('kimchi-vm', None)
>> mock_vm_running.assert_called_once_with('kimchi-vm')
>> + mock_handleVMOff.assert_called_once_with('kimchi-vm')
>> + mock_add_port.assert_called_once_with('kimchi-vm', '6660')
>>
>> @mock.patch('wok.plugins.kimchi.model.virtviewerfile.run_command')
>> def test_firewall_provider_firewallcmd(self, mock_run_cmd):
>> @@ -504,6 +519,42 @@ class ModelTests(unittest.TestCase):
>> ]
>> )
>>
>> + @unittest.skipUnless(utils.running_as_root(), 'Must be run as
>> root')
>> + @mock.patch('wok.plugins.kimchi.model.virtviewerfile.'
>> + 'FirewallManager.remove_vm_graphics_port')
>> + @mock.patch('wok.plugins.kimchi.model.virtviewerfile.'
>> + 'FirewallManager.add_vm_graphics_port')
>> + def test_vm_virtviewerfile_vmlifecycle(self, mock_add_port,
>> + mock_remove_port):
>> +
>> + inst = model.Model(objstore_loc=self.tmp_store)
>> + params = {'name': 'test',
>> + 'source_media': {'type': 'disk', 'path': UBUNTU_ISO}}
>> + inst.templates_create(params)
>> +
>> + with RollbackContext() as rollback:
>> + params = {'name': 'kimchi-vnc',
>> + 'template': '/plugins/kimchi/templates/test'}
>> + task1 = inst.vms_create(params)
>> + inst.task_wait(task1['id'])
>> + rollback.prependDefer(inst.vm_delete, 'kimchi-vnc')
>> +
>> + inst.vm_start('kimchi-vnc')
>> +
>> + graphics_info = VMModel.get_graphics('kimchi-vnc',
>> inst.conn)
>> + graphics_port = graphics_info[2]
>> +
>> + vvmodel = VMVirtViewerFileModel(conn=inst.conn)
>> + vvmodel.lookup('kimchi-vnc')
>> +
>> + inst.vm_poweroff('kimchi-vnc')
>> + time.sleep(5)
>> +
>> + mock_add_port.assert_called_once_with('kimchi-vnc',
>> graphics_port)
>> + mock_remove_port.assert_called_once_with('kimchi-vnc')
>> +
>> + inst.template_delete('test')
>> +
>> @unittest.skipUnless(utils.running_as_root(), "Must be run as
>> root")
>> def test_vm_serial(self):
>> inst = model.Model(objstore_loc=self.tmp_store)
>>
>
>
More information about the Kimchi-devel
mailing list