Spec Helfer:Wie RSpec verwenden, um Erwartungen für Top-Level-Methoden auf einer Sinatra App einzurichten?
def app
Sinatra::Application
end
App:
require 'sinatra'
get '/' do
track_request
"Welcome"
end
def track_request
puts self.inspect
....
end
Wie track_request
verspotten?
allow(app).to receive :track_request
allow_any_instance_of(Sinatra::Application).to receive :track_request
allow(Sinatra::Application).to receive :track_request
Keine von diesen funktioniert.
self
ist Haupt, also ich denke, wir müssen eine Methode auf Haupt spotten. Aber ich habe nicht herausgefunden, wie es geht.
Es kann einen Unterschied in der Einrichtung der Testumgebung geben. Ich konnte die Methode gut vortäuschen. https://gist.github.com/kgrz/4ea34a6cf79502c3eda678d6760b34b1 – Kashyap