add unit test project and test cases