Forum: Rails-ES Test de unidad

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
A3114970a2819cbf6dbf635d468a0d58?d=identicon&s=25 Gerardo Vázquez (Guest)
on 2007-03-22 21:02
(Received via mailing list)
Hola a todos,
estoy empezando con Rails y quería hacer test de unidades de los
modelos, el problema es que tengo un modelo con herencia simple de
tabla:

class Node ActiveRecord::Base
  act_as_tree
end

class Project < Node
end

class Task < Project
end

class Milestone < Node
end

y no se como ponerlo en los test de unidad, todo el rato falla diciendo
que no existe una tabla projects , tasks o milestones en la bd
¿alguien sabe como se pone?

Gracias y un saludo
Fc3f12c165eaeac4999bc274215fb582?d=identicon&s=25 Roberto m. Oliva (roliva)
on 2007-03-23 11:32
(Received via mailing list)
Hola!

Estos problemas suelen ser porque no encuentra los ficheros donde estan
las clases. Lo puedes solucionar de varias maneras, pero la mas sencilla
es meter cada clase en un fichero que coincida en nombre:
Node > node.rb
Project > project.rb
Task > task.rb
Milestone > milestone.rb

Espero que te ayude
Un saludo
Roberto M. Oliva


El jue, 22-03-2007 a las 21:01 +0100, Gerardo Vázquez escribió:
A3114970a2819cbf6dbf635d468a0d58?d=identicon&s=25 Gerardo Vázquez (Guest)
on 2007-03-23 13:38
(Received via mailing list)
Hola Roberto
gracias por responder, lo cierto es que eso ya lo tengo puesto,
un modelo en cada fichero, el problema es que conectaba mal con la bd.
Vi posible solución poniendo todos los fixtures en el de la clase base
(en mi caso :nodes) la pega que tiene (me sigue fallando) es que si
encuentra los fixtures y los carga, pero no se que hace con los tipos de
 las clases, pq si tengo 8 entradas (2 para cada tipo de clase) al
cargar no me los distingue del todo. Dice que hay 8 nodes , 4 projects y
las tasks y milestones si coge bien los 2 que hay. Supongo que lo que
hace es sequir el árbol de herencia para determinar el tipo y va
subiendo (¿y acumulando?) en nº de tipos. ¿hay alguna manera de evitar
esto?

por si ha alguien le interesa rspec (q es lo que estoy usando):

http://rspec.rubyforge.org/documentation/rails/install.html
http://www.lukeredpath.co.uk/2006/8/29/developing-...

Un  saludo


Roberto M. Oliva escribió:
A3114970a2819cbf6dbf635d468a0d58?d=identicon&s=25 Gerardo Vázquez (Guest)
on 2007-03-25 19:56
(Received via mailing list)
Me respondo :D
usando STI al hacer un Project.find(:all) si antes has buscado las
tareas con Task.find(:all), al ser subclases y estar ya cargadas te las
añade a la lista de proyectos, vamos que en realidad es como si hiciera
Project.find(:all, :include => :subclass_objects) lo he solucionado
usando collect (para recoger solo los objetos de tipo proyecto) y
compact!

Otra cosilla ¿cual es el sitio para añadir una gema (money en este caso)
para que la vea toda la aplicación? lo he puesto al final de
enviroment.rb -> gem 'Money-1.7.1', pero el servidor falla al arrancar.

Gracias y un saludo

Gerardo
This topic is locked and can not be replied to.