add test and update reamde