added validations and test cases