5 Stimmen

Wie kann man Mokka Mock ablösen?

Ich habe den folgenden Mokka-Mock, der hervorragend funktioniert.

In einer test.rb-Datei:

setup do
  Date.stubs(:today).returns(Date.new(2011, 7, 19)) 
  Time.stubs(:now).returns(Time.new(2011,1,1,9,0))
end

Das Problem ist, dass der Zeitplan für die Tests nicht eingehalten wird. Nachdem die Tests gelaufen sind, sind die Datums- und Zeitobjekte immer noch gespottet.(!)

Finished in -21949774.01594216 seconds.

Ich habe das Folgende hinzugefügt:

teardown do
  Date.unstubs(:today)
  Time.unstubs(:now)
end

Dabei wird für jeden Test der folgende Fehler ausgegeben: WARNING: there is already a transaction in progress

Ist dies der richtige Weg, um die Verbindung zu lösen? Ist es besser, das Unstub am Ende der Testdatei oder sogar am Ende der Unit-Test-Suite durchzuführen?

Arbeiten in Rails 3.07 und Mocha 0.9.12

Danke.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X