use findAndModify in place of update (from db collection)
add more test case