コード例 #1
0
ファイル: test_action_base.py プロジェクト: epim/senlin
    def test_action_create_conflict(self, mock_lock, mock_active, mock_store):
        mock_store.return_value = 'FAKE_ID'
        uuid1 = 'ce982cd5-26da-4e2c-84e5-be8f720b7478'
        uuid2 = 'ce982cd5-26da-4e2c-84e5-be8f720b7479'
        mock_active.return_value = [ao.Action(id=uuid1), ao.Action(id=uuid2)]
        mock_lock.return_value = False

        error_message = (
            'The NODE_CREATE action for target {} conflicts with the following'
            ' action\(s\): {},{}').format(OBJID, uuid1, uuid2)
        with self.assertRaisesRegexp(exception.ActionConflict, error_message):
            ab.Action.create(self.ctx, OBJID, 'NODE_CREATE', name='test')

        mock_store.assert_not_called()
        mock_active.assert_called_once_with(mock.ANY, OBJID)
コード例 #2
0
ファイル: test_action_base.py プロジェクト: albertjone/senlin
    def test_action_create_node_operation_no_conflict(self, mock_lock,
                                                      mock_active, mock_store):
        mock_store.return_value = 'FAKE_ID'
        uuid1 = 'ce982cd5-26da-4e2c-84e5-be8f720b7478'
        uuid2 = 'ce982cd5-26da-4e2c-84e5-be8f720b7479'
        mock_active.return_value = [
            ao.Action(id=uuid1, action='NODE_DELETE'),
            ao.Action(id=uuid2, action='NODE_DELETE')
        ]
        mock_lock.return_value = True

        result = ab.Action.create(self.ctx, OBJID, 'NODE_OPERATION',
                                  name='test')

        self.assertEqual('FAKE_ID', result)
        mock_store.assert_called_once_with(self.ctx)
        mock_active.assert_called_once_with(mock.ANY, OBJID)