Ejemplo n.º 1
0
 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 ''
Ejemplo n.º 2
0
    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()
Ejemplo n.º 3
0
    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()