def test_valid_data(self): vdisk = Vdisk(name='vdisk', data=self.valid_data) vdisk.api.services.get = MagicMock() vdisk.validate() data = self.valid_data.copy() data['zerodb'] = '' data['nsName'] = '' data['password'] = vdisk.data['password'] assert vdisk.data == data assert vdisk.data['password'] is not ''
def test_no_node_installed(self): with pytest.raises( RuntimeError, message= 'template should fail to install if no service node is installed' ): vdisk = Vdisk(name='vdisk', data=self.valid_data) vdisk.api.services.get = MagicMock( side_effect=ServiceNotFoundError) vdisk.validate() with pytest.raises( RuntimeError, message= 'template should fail to install if no service node is installed' ): vdisk = Vdisk(name='vdisk', data=self.valid_data) node = MagicMock() node.state.check = MagicMock(side_effect=StateCheckError) vdisk.api.services.get = MagicMock(return_value=node) vdisk.validate()
def test_invalid_data(self): with pytest.raises( ValueError, message= 'template should fail to instantiate if data dict is missing the diskType' ): vdisk = Vdisk(name='vdisk', data={}) vdisk.api.services.get = MagicMock() vdisk.validate() with pytest.raises( ValueError, message= 'template should fail to instantiate if data dict is missing the size' ): vdisk = Vdisk(name='vdisk', data={'diskType': 'hdd'}) vdisk.api.services.get = MagicMock() vdisk.validate() with pytest.raises( ValueError, message= 'template should fail to instantiate if data dict is missing the label' ): vdisk = Vdisk(name='vdisk', data={'diskType': 'hdd', 'size': 5}) vdisk.api.services.get = MagicMock() vdisk.validate()