make it modular and easy to add more test cases