add unit test functions