Die Validierung der Einzigartigkeit von Factory Girls schlägt für verbundene Fabriken fehl

Ich habe (vereinfachte) Fabriken wie folgt definiert:

factory :league do
  acronym 'NBA'
end

factory :division do
  league
end

Divisionen gehören zu Ligen. Als ich diese Fabrik definierte, ging ich davon aus, dass eine Liga erstellt und diese Liga immer wieder verwendet wird, um Divisionen eine echte league_id zu geben.

Stattdessen erhalte ich beim zweiten Aufruf von FehlerFactoryGirl.create(:division) weil die Ligaacronym soll einzigartig sein.

class League < ActiveRecord::Base
  validates :acronym, uniqueness: true
end

Dies führt zu der folgenden Unterbrechung des Tests

ActiveRecord :: RecordInvalid: Überprüfung fehlgeschlagen: Akronym wurde bereits verwendet

Wie kann ich das umgehen, am besten ohne eine Hierarchie im Setup zum Test anzulegen?

Wenn es etwas Besseres als factory_girl für das gibt, was ich erreichen möchte, schlagen Sie es bitte vor

Antworten auf die Frage(2)

Ihre Antwort auf die Frage