ALWAY TEST BEFORE COMMIT