add test case
update todo