示例#1
0
def test_memory_dict_setdefault():
    md = MemoryDict({14: 15})
    md.setdefault(14, 0)
    assert md[14] == 15
    md.setdefault(123, 456)
    assert md[123] == 456
    with pytest.raises(ValueError, match='must be an int'):
        md.setdefault(10, 'default')
    with pytest.raises(ValueError, match='must be positive'):
        md.setdefault(-10, 123)
def test_memory_dict_setdefault():
    memory = MemoryDict({14: 15})
    memory.setdefault(14, 0)
    assert memory[14] == 15
    memory.setdefault(123, 456)
    assert memory[123] == 456
    with pytest.raises(ValueError, match='must be an int'):
        memory.setdefault(10, 'default')
    with pytest.raises(KeyError, match='must be nonnegative'):
        memory.setdefault(-10, 123)
    with pytest.raises(ValueError, match='The offset of a relocatable value must be nonnegative'):
        memory[RelocatableValue(segment_index=10, offset=-2)] = 13