code review and few new test cases