more testcases, fix test