add test case and document