Pregunta

Estoy usando FactoryGirl y RSPEC para las pruebas. El modelo establece una clave extranjera después de init si es nulo. Por lo tanto, utiliza datos de otra asociación. Pero, ¿cómo puedo probarlo? Normalmente usaría una fábrica para la creación de este objeto y usaría un stub_chain para "self.user.main_address.country_id". Pero con la creación de este objeto, después de la inicialización se invocará. No tengo oportunidad de agitarlo.

after_initialize do
  if self.country_id.nil?
    self.country_id = self.user.main_address.country_id || Country.first.id
  end
end

¿Alguna idea?

No hay solución correcta

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top