refactoring specs for more efficient factories and validations