コード例 #1
0
def test_failed_delete_checkpoint():
    error_msg = "Internal delete error"

    dom = FakeDomainAdapter()

    checkpoint_2 = FakeCheckpoint(CHECKPOINT_2_XML, CHECKPOINT_2_ID, dom=dom)
    # simulating an error that raised when calling the delete method
    # of a specific checkpoint
    checkpoint_2.errors["delete"] = fake.libvirt_error(
        [libvirt.VIR_ERR_INTERNAL_ERROR, '', error_msg], "Fake libvirt error")

    dom.output_checkpoints = [
        FakeCheckpoint(CHECKPOINT_1_XML, CHECKPOINT_1_ID, dom=dom),
        checkpoint_2
    ]

    vm = FakeVm()
    res = backup.delete_checkpoints(vm, dom,
                                    [CHECKPOINT_1_ID, CHECKPOINT_2_ID])

    expected_result = {
        'checkpoint_ids': [CHECKPOINT_1_ID],
        'error': {
            'code': 1,
            'message': error_msg
        }
    }
    assert res["result"] == expected_result

    res = backup.list_checkpoints(vm, dom)
    assert res["result"] == [CHECKPOINT_2_ID]
コード例 #2
0
def test_list_checkpoints():
    dom = FakeDomainAdapter(output_checkpoints=[CHECKPOINT_1, CHECKPOINT_2])

    vm = FakeVm()
    res = backup.list_checkpoints(vm, dom)

    assert res["result"] == [CHECKPOINT_1.getName(), CHECKPOINT_2.getName()]
コード例 #3
0
def test_delete_checkpoint_from_empty_chain():
    dom = FakeDomainAdapter()
    vm = FakeVm()

    res = backup.delete_checkpoints(vm, dom, [CHECKPOINT_1_ID])

    expected_result = {'checkpoint_ids': [CHECKPOINT_1_ID]}
    # validate that the missing checkpoint reported as
    # successfully removed
    assert res["result"] == expected_result

    res = backup.list_checkpoints(vm, dom)
    assert res["result"] == []
コード例 #4
0
def test_delete_one_checkpoint():
    dom = FakeDomainAdapter()
    dom.output_checkpoints = [
        FakeCheckpoint(CHECKPOINT_1_XML, CHECKPOINT_1_ID, dom=dom),
        FakeCheckpoint(CHECKPOINT_2_XML, CHECKPOINT_2_ID, dom=dom)
    ]

    vm = FakeVm()
    res = backup.delete_checkpoints(vm, dom, [CHECKPOINT_1_ID])

    expected_result = {'checkpoint_ids': [CHECKPOINT_1_ID]}
    assert res["result"] == expected_result

    res = backup.list_checkpoints(vm, dom)
    assert res["result"] == [CHECKPOINT_2_ID]
コード例 #5
0
def test_delete_missing_checkpoint():
    dom = FakeDomainAdapter()
    dom.output_checkpoints = [
        FakeCheckpoint(CHECKPOINT_2_XML, CHECKPOINT_2_ID, dom=dom)
    ]

    vm = FakeVm()
    res = backup.delete_checkpoints(vm, dom,
                                    [CHECKPOINT_1_ID, CHECKPOINT_2_ID])

    expected_result = {'checkpoint_ids': [CHECKPOINT_1_ID, CHECKPOINT_2_ID]}
    # validate that the missing checkpoint reported as
    # successfully removed
    assert res["result"] == expected_result

    res = backup.list_checkpoints(vm, dom)
    assert res["result"] == []
コード例 #6
0
def test_list_empty_checkpoints():
    dom = FakeDomainAdapter()
    vm = FakeVm()
    res = backup.list_checkpoints(vm, dom)

    assert res["result"] == []