Dovrebbe essere usato un metodo personalizzato nella sezione prima (: ciascuno)

StackOverflow https://stackoverflow.com/questions/267938

  •  06-07-2019
  •  | 
  •  

Domanda

Ho un metodo sul modello Categoria chiamato create_main usato per creare le categorie principali. Dovrei usare questo metodo nella sezione prima (: each) anche se il metodo stesso deve essere testato, o la categoria principale dovrebbe essere creata manualmente usando le funzionalità integrate nelle rotaie.

È stato utile?

Soluzione

Dovrebbe essere possibile dividere i tuoi esempi in due gruppi di esempi, un gruppo in cui prima (: ognuno) è chiamato con create_main, e lo usi per testare tutto tranne create_main. Quindi, hai un altro sottoinsieme, dove prima (: ognuno) non chiama create_main, e qui provi create_main.

Nel tuo caso, penso che potresti provare qualcosa di simile al seguente:

describe Category, " without a main category" do
  before(:each) do
    # No call to create_main here
  end

  it "should create the main category" do
    # Here we test that create_main is working
  end
end

describe Category, " with a main category already created" do
  before(:each) do
    # This time, we do call create_main to set up the object as necessary
  end

  # More examples go here that depend on create_main
end

Prova. Non sono sicuro al 100% che funzioni, ma ho visto configurazioni simili in passato.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top