Add more tests to cover various cases