Added more test cases, and made things covered a bit better