Right, AssertionError is a subclass of Exception, so it will always pass. I think we should have, instead:
```Python
try:
    cst = constant(val)
except OverflowError:  # or whatever Exception is supposed to be raised
    pass
assert cst.value == val
assert cst.type == 'uint64'
```
or:
```Python
try:
    cst = constant(val)
except OverflowError:  # or whatever Exception is supposed to be raised
    pass
else:
    # Executed if no exception was raised
    assert cst.value == val
    assert cst.type == 'uint64'
```