Example #1
0
 def setUp(self):
     """
     Reset models.client.GanetiRapiClient back to the GanetiRapiClient
       class, so that patching can begin.
     """
     models.client.GanetiRapiClient = GanetiRapiClient
     self._data = self.data.copy()
     if hasattr(self, 'patches'):
         self.proxy = MonkeyPatcher(*self.patches)
     self.proxy.patch()
Example #2
0
 def setUp(self):
     """
     Reset models.client.GanetiRapiClient back to the GanetiRapiClient
       class, so that patching can begin.
     """
     models.client.GanetiRapiClient = GanetiRapiClient
     self._data = self.data.copy()
     if hasattr(self, 'patches'):
         self.proxy = MonkeyPatcher(*self.patches)
     self.proxy.patch()
Example #3
0
class TestModifyVirtualMachineForm(TestCase, VirtualMachineTestCaseMixin):

    Form = ModifyVirtualMachineForm

    proxy = MonkeyPatcher()
    # Assure that we have a GanetiRapiClient object to work with in tests
    rapi = GanetiRapiClient

    data = dict(vcpus=2,
                acpi=True,
                disk_cache='default',
                initrd_path='',
                kernel_args='ro',
                kvm_flag=None,
                mem_path=None,
                migration_downtime=30,
                security_domain='',
                security_model='none',
                usb_mouse=None,
                use_chroot=False,
                use_localtime=False,
                vnc_bind_address='0.0.0.0',
                vnc_tls=False,
                vnc_x509_path=None,
                vnc_x509_verify=False,
                memory=512,
                os='image+debian-osgeo',
                disk_type='paravirtual',
                boot_order='disk',
                nic_type='paravirtual',
                nic_count=1,
                nic_count_original=1,
                nic_link_0='br0',
                nic_mac_0='aa:bb:00:00:33:d2',
                root_path='/dev/vda1',
                kernel_path='/boot/vmlinuz-2.32.6-27-generic',
                serial_console=True,
                cdrom_image_path='')

    def setUp(self):
        """
        Reset models.client.GanetiRapiClient back to the GanetiRapiClient
          class, so that patching can begin.
        """
        models.client.GanetiRapiClient = GanetiRapiClient
        self._data = self.data.copy()
        if hasattr(self, 'patches'):
            self.proxy = MonkeyPatcher(*self.patches)
        self.proxy.patch()

    def tearDown(self):
        self.proxy.restore()
        self.data = self._data.copy()
        self.vm.delete()
        self.cluster.delete()
        models.clear_rapi_cache()

    def test_multiple_nic(self):
        data = self.data.copy()
        data['nic_count'] = 2
        data['nic_mac_1'] = 'aa:bb:cc:dd:ee:ff'
        data['nic_link_1'] = 'br1'
        form = self.Form(self.vm, data)

        self.assertTrue("nic_mac_0" in form.fields)
        self.assertTrue("nic_mac_1" in form.fields)
        self.assertTrue("nic_link_0" in form.fields)
        self.assertTrue("nic_link_1" in form.fields)
        self.assertTrue(form.is_valid(), form.errors)

    def test_validate_data(self):
        data = self.data.copy()
        form = self.Form(self.vm, data)
        self.assertTrue(form.is_valid(), form.errors)

    def test_validate_new_nic(self):
        data = self.data.copy()
        data['nic_count'] = 2
        data['nic_mac_1'] = 'aa:bb:cc:dd:ee:ff'
        data['nic_link_1'] = 'br1'
        form = self.Form(self.vm, data)
        self.assertTrue(form.is_valid(), form.errors)

    def test_validate_remove_nic(self):
        data = self.data.copy()
        data['nic_count'] = 1
        data['nic_original'] = 2
        data['nic_mac_1'] = None
        data['nic_link_1'] = None
        form = self.Form(self.vm, data)
        self.assertTrue(form.is_valid(), form.errors)

    def test_validate_missing_nic_mac(self):
        data = self.data.copy()
        del data['nic_mac_0']
        form = self.Form(self.vm, data)
        self.assertFalse(form.is_valid(), form.errors)

    def test_validate_missing_nic_link(self):
        data = self.data.copy()
        del data['nic_link_0']
        form = self.Form(self.vm, data)
        self.assertFalse(form.is_valid())

    def test_initial_base_initial_values(self):
        form = self.Form(self.vm)
        self.assertEqual(1, form.fields['nic_count'].initial)
        self.assertEqual('br42', form.fields['nic_link_0'].initial)
        self.assertEqual('aa:00:00:c5:47:2e', form.fields['nic_mac_0'].initial)
Example #4
0
class TestModifyVirtualMachineForm(TestCase, VirtualMachineTestCaseMixin):

    Form = ModifyVirtualMachineForm

    proxy = MonkeyPatcher()
    # Assure that we have a GanetiRapiClient object to work with in tests
    rapi = GanetiRapiClient

    data = dict(vcpus=2,
        acpi=True,
        disk_cache='default',
        initrd_path='',
        kernel_args='ro',
        kvm_flag=None,
        mem_path=None,
        migration_downtime=30,
        security_domain='',
        security_model='none',
        usb_mouse=None,
        use_chroot=False,
        use_localtime=False,
        vnc_bind_address='0.0.0.0',
        vnc_tls=False,
        vnc_x509_path=None,
        vnc_x509_verify=False,
        memory=512,
        os='image+debian-osgeo',
        disk_type='paravirtual',
        boot_order='disk',
        nic_type='paravirtual',
        nic_count=1,
        nic_count_original=1,
        nic_link_0='br0',
        nic_mac_0='aa:bb:00:00:33:d2',
        root_path='/dev/vda1',
        kernel_path='/boot/vmlinuz-2.32.6-27-generic',
        serial_console=True,
        cdrom_image_path='')

    def setUp(self):
        """
        Reset models.client.GanetiRapiClient back to the GanetiRapiClient
          class, so that patching can begin.
        """
        models.client.GanetiRapiClient = GanetiRapiClient
        self._data = self.data.copy()
        if hasattr(self, 'patches'):
            self.proxy = MonkeyPatcher(*self.patches)
        self.proxy.patch()

    def tearDown(self):
        self.proxy.restore()
        self.data = self._data.copy()
        self.vm.delete()
        self.cluster.delete()
        models.clear_rapi_cache()

    def test_multiple_nic(self):
        data = self.data.copy()
        data['nic_count'] = 2
        data['nic_mac_1'] = 'aa:bb:cc:dd:ee:ff'
        data['nic_link_1'] = 'br1'
        form = self.Form(self.vm, data)

        self.assertTrue("nic_mac_0" in form.fields)
        self.assertTrue("nic_mac_1" in form.fields)
        self.assertTrue("nic_link_0" in form.fields)
        self.assertTrue("nic_link_1" in form.fields)
        self.assertTrue(form.is_valid(), form.errors)

    def test_validate_data(self):
        data = self.data.copy()
        form = self.Form(self.vm, data)
        self.assertTrue(form.is_valid(), form.errors)

    def test_validate_new_nic(self):
        data = self.data.copy()
        data['nic_count'] = 2
        data['nic_mac_1'] = 'aa:bb:cc:dd:ee:ff'
        data['nic_link_1'] = 'br1'
        form = self.Form(self.vm, data)
        self.assertTrue(form.is_valid(), form.errors)

    def test_validate_remove_nic(self):
        data = self.data.copy()
        data['nic_count'] = 1
        data['nic_original'] = 2
        data['nic_mac_1'] = None
        data['nic_link_1'] = None
        form = self.Form(self.vm, data)
        self.assertTrue(form.is_valid(), form.errors)

    def test_validate_missing_nic_mac(self):
        data = self.data.copy()
        del data['nic_mac_0']
        form = self.Form(self.vm, data)
        self.assertFalse(form.is_valid(), form.errors)

    def test_validate_missing_nic_link(self):
        data = self.data.copy()
        del data['nic_link_0']
        form = self.Form(self.vm, data)
        self.assertFalse(form.is_valid())

    def test_initial_base_initial_values(self):
        form = self.Form(self.vm)
        self.assertEqual(1, form.fields['nic_count'].initial)
        self.assertEqual('br42', form.fields['nic_link_0'].initial)
        self.assertEqual('aa:00:00:c5:47:2e', form.fields['nic_mac_0'].initial)