He tenido un montón de pruebas fallidas con errores como este:
ActiveRecord::RecordInvalid:
Validation failed: Name has already been taken
y parece que este es el problema:
fab!(:the_group) { Fabricate(:group) }
Todos estos funcionaron hasta hace poco. Vi esto en otro plugin en el que estaba trabajando y, creo, me las arreglé para poner un nombre aleatorio yo mismo, pero estos funcionaron, creo, hasta ayer.
¿Ha cambiado algo o he hecho algo tonto por error?
EDITAR: Con la ayuda de Claude y el Bot de Ayuda de Discourse, intenté reemplazar el fab anterior con
Fabricator(:the_group) do
name { sequence(:group_name) { |i| "Test Group #{i}" } }
end
pero no pude descifrarlo del todo.
Luego usé
let(:the_group) { Fabricate(:group) }
en lugar del !fab anterior y esto ha reducido el número de fallos de 12 a 1, pero todavía falla con
1) Pfaffmanager::ServersController servers admin can get servers owned by a group
Failure/Error: let(:the_group) { Fabricate(:group) }
ActiveRecord::RecordInvalid:
Validation failed: Name has already been taken
No creo que nada alrededor de estas pruebas haya cambiado desde ayer a las 10:30 AM CDT, cuando hice el último commit.
Revertí a un commit anterior y ahora falla con
1) Pfaffmanager::ServersController servers includes groups that the user is in
Failure/Error: let(:the_group) { Fabricate(:group) }
ActiveRecord::RecordInvalid:
Validation failed: Name has already been taken
y lo ejecuté de nuevo sin hacer ningún cambio y ahora falla en
1) Pfaffmanager::ServersController servers can update group id if group owner
Failure/Error: let(:the_group) { Fabricate(:group) }
ActiveRecord::RecordInvalid:
Validation failed: Name has already been taken
Así que parece que está fallando en una prueba, ¿y es aleatorio?