add name validation with tests