form validation and unit tests up