validations and rspec tests