Add tests, track changed attributes