fix bugs add simple test