Added more tests. I think all the test cases are now covered