Add: the rest of test and unit test case