added and fixed some tests, made it raise an exception on failed updates