Estoy trabajando en la creación de mi primer complemento para los rieles. Todavía soy bastante nuevo para ruby y me preguntaba si es posible obtener la clase heredera?Ruby hereda la clase
Por ejemplo, estoy tratando de crear un complemento que permita pruebas unitarias y pruebas funcionales cuando no esté utilizando migraciones. Lo que intento hacer es inicializar una variable de clase llamada controlador para inicializarla al tipo de controlador que se está probando.
Si tengo un ControllerTest clase base:
class ControllerTest < Test::Unit::TestCase
attr_accessor :controller
def initialize
super
@controller = "call function that will find the inheriting classes name and create an instance of that controller type."
end
end
Así que lo que estoy atascado en la actualidad es conseguir que el nombre de la clase que hereda. es posible? Y si no, ¿alguien sabe de otra manera sobre cómo podría implementar esto?
Gracias de antemano.
Para futuras referencias, la forma más fácil es simplemente usar la devolución de llamada "heredada". – fig
@ fig-gnuton: Si es así, publique el ejemplo para lograr * lo mismo * (= obtenga un tipo específico de controlador basado en el nombre de la clase heredada) usando eso; eso sería realmente útil para cualquier persona que encuentre esta pregunta más tarde y en realidad significa preguntar cómo usar la devolución de llamada 'heredada' en lugar de de lo que se trataba esta pregunta. – Arkku
Sería bueno obtener una explicación para el voto a la baja; es cierto que hubo desacuerdo sobre la interpretación de la pregunta, pero el código en esta respuesta funciona y responde a la pregunta según lo previsto por el solicitante. No es culpa de la respuesta si no responde alguna otra pregunta. – Arkku