update and add test