Ho appena riscontrato diversi test falliti con errori come questo:
ActiveRecord::RecordInvalid:
Validation failed: Name has already been taken
e sembra che questo sia il problema:
fab!(:the_group) { Fabricate(:group) }
Tutto questo funzionava fino a poco tempo fa. Ho visto questo su un altro plugin su cui stavo lavorando e, credo, sono riuscito a impostare un nome casuale da solo, ma questi funzionavano, credo, fino a ieri.
È cambiato qualcosa, o ho fatto qualcosa di sciocco per errore?
EDIT: Con l’aiuto di Claude e del Discourse Helper Bot, ho provato a sostituire il fab sopra con
Fabricator(:the_group) do
name { sequence(:group_name) { |i| "Test Group #{i}" } }
end
ma non sono riuscito a capire bene come fare.
Poi ho usato
let(:the_group) { Fabricate(:group) }
invece del !fab sopra e questo ha ridotto il numero di fallimenti da 12 a 1, ma sta ancora fallendo 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
Non credo che nulla intorno a questi test sia cambiato da ieri alle 10:30 AM CDT, quando ho fatto l’ultimo commit.
Sono tornato a un commit precedente e ora fallisce 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
e l’ho eseguito di nuovo senza apportare modifiche e ora fallisce su
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
Quindi sembra che stia fallendo su un test, ed è casuale?