Ich versuche, unerwartetes Verhalten von einer Web-API zu simulieren, wie zum Beispiel nicht den Server und Timeouts zu finden, mit webmock.WebMock simulieren fehlgeschlagene API (kein Internet, Timeout ++)
Was wäre der beste Weg, dies zu tun? Alle ich denken kann, ist, so etwas zu tun:
stubbed_request = stub_request(:get, "#{host}/api/something.json").
with(:headers => {'Accept'=>'*/*', 'Content-Type'=>'application/json', 'User-Agent'=>'Ruby'}).
to_return(:status => [500, "Internal Server Error"])
Das ist für Dinge wie 404 usw. funktionieren sollte, aber wie kann ich testen Timeouts, Server und nicht/Offline-Server gefunden keine Internetverbindung?
Das half mir, schämte mich, dass ich 'to_raise' und' to_timeout' nicht früher gefunden habe. Vielen Dank! –
Seltsam, wenn ich 'to_timeout' verwende, kann ich nicht vermeiden, dass 'RestClient :: RequestTimeout 'ausgelöst wird und meine Testfehler herauskommen. Wenn ich 'to_raise' in irgendeiner Weise verwende, bekomme ich einen 'SystemStackError: stack level zu tief'. – Todd
Um ehrlich zu sein, es klingt wie du einen Fehler in deinem Code hast: / – Automatico