Mam aplikację rails3, która ma niektórych obserwatorów. Nie mogę dla mojego życia dowiedzieć się, jak wyłączyć te testy na Rspec!jak uruchomić rspec bez obserwatorów w szynach 3?
12
A
Odpowiedz
5
Dwie opcje mogą być:
- No peeping toms
- Dodaj poniższe linie do środowiska test.rb:
config.active_record.observers = []
30
no_peeping_toms wola ostrzeżenia wyjście amortyzacyjne w przypadku korzystania z Rails 3.1 i nowsze. Obecnie otwarty jest 7 pull requests, aby usunąć ostrzeżenia o odstąpieniu od umowy, jednak gem is not necessary with Rails 3.1+. Rails 3.1 dodano do ActiveModel (a zatem ActiveRecord) możliwość włączania i obserwowania obserwatorów.
Można umieścić następującą linię w spec_helper aby wyłączyć wszystkie obserwatorów na wszystkich ActiveRecord-potomnych modeli:
# spec/spec_helper.rb
...
RSpec.configure do |config|
...
config.before do
...
ActiveRecord::Base.observers.disable :all # <-- Turn 'em all off!
end
end
Można włączyć je z powrotem na selektywnie, aby przetestować ich zachowanie poprzez owinięcie działań w widowisko z Metoda enable.
# spec/models/foo_observer_spec.rb
describe FooObserver do
subject { FooObserver.instance }
it 'notices when new Foos are created' do
subject.should_receive(:after_create)
Foo.observers.enable :foo_observer do # <- Turn FooObserver on
Foo.create('my new foo')
end # <- ... and then back off
end
end
Powiązane problemy
- 1. default_scope w szynach 3
- 2. Jak przetestować cookies wygaśnięcia szynach rspec
- 3. Metoda "puts" w szynach 3
- 4. jak przetestować parametry przekazane do kontrolera w szynach 3, używając rspec?
- 5. Rspec 3 vs Rspec 2 matchers
- 6. jaki jest nowy odpowiednik Rspec any_instance w Rspec 3?
- 7. Jak przekonwertować errors_on na składnię RSpec 3?
- 8. dekodowanie base64 przez spinacz w szynach 3
- 9. Dziedziczenie tabeli klas w szynach 3
- 10. Problemy z Gwardii, Spork, RSpec & Rails 3
- 11. Układ zagnieżdżony wielopoziomowy w szynach 3
- 12. Brak błędu metoda w szynach 3 app
- 13. Zastąp domyślny generator rusztowania w szynach 3
- 14. Implementacja harmonogramu Rufusa w szynach 3
- 15. Jak byś przetestował obserwatorów z rSpec w aplikacji Ruby on Rails?
- 16. Jak przetestować API za pomocą rspec i kapibary na szynach?
- 17. Angularjs: dlaczego jest 3 obserwatorów dla 1 wiązania?
- 18. Jak uruchomić zadanie natarcia po linii poleceń w szynach
- 19. Jak mogę anulować instalację w rspec 3 bez włączania starej składni?
- 20. Jak zdefiniować własne pomocników routingu w szynach 3?
- 21. Jak dodać atrybut class, aby wybrać tag w szynach 3
- 22. Jak znaleźć zapis z tablicy dwuwymiarowej tablicy w szynach 3?
- 23. Jak korzystać z RSpec bez szyn?
- 24. Jak uruchomić aplikację bez elewacji?
- 25. Jak uruchomić polecenie bez sudo?
- 26. Jak uruchomić wireshark w tle bez GUI?
- 27. opóźnionego zadania z i18n na szynach 3
- 28. Jak uruchomić python 2 i 3 w systemie Windows 7?
- 29. Testy integracji Rspec bez ogórka?
- 30. próbuje uruchomić „test natarcia” w szynach kod źródłowy
Dzięki za wskazanie "Foo.observers.enable" – iRonin
Nie ma za co! –