simplify by avoiding the callback
update test