improve test and doc