2016-10-30 1 views
0

Gibt es einen Weg zu einem Railsminitest Armaturen nur für einen bestimmten Test oder eine Reihe von Tests? Ich frage, weil ich Delayed::Job Jobs mit den Standard index/show/delete Schemas anzeigen möchte, also möchte ich einige Delayed::Job Objekte fälschen, um meine Ansichten zu testen. Aber ich will nicht, dass diese Objekte vorhanden sind, wenn ich meinen Delayed::Job Verarbeitungscode tatsächlich teste, also würde ich dann nur für einen bestimmten Satz von Tests hinzufügen wollen.Hinzufügen Schienen MiniTest Leuchten für einen einzigen Test

+0

Haben Sie ein Fabrikmuster für diese Fälle in Betracht gezogen? Dann können Sie die Objekte nur auf Anfrage erstellen. Es könnte so einfach sein wie das Erstellen der Objekte in einer _setup_ Methode oder vielleicht [factory_girl] (https://github.com/thoughtbot/factory_girl) würde helfen? –

Antwort

1

Sie können eine Funktion schreiben, die die Testdaten/Fixtures erstellt, und diese Funktion vor dem Test aufrufen. wie

def test_user_delete 
    create_user 
    ... 
    ... 
end 

private  
def create_user 
    User.create(...) 
end 
+0

Danke beides. Ich hatte keine Chance, deine Methoden zu testen, aber ein Heads-up, dass ein Problem, das ich schlug, ein Fehler in "Paranoia" zu sein scheint; Upgrade von 'Paranoia' 1.2.0 auf 2.2.0 löste es. Der Fehler verursachte einen seltsamen Fehler in Bezug auf default_scope, der damit zu tun zu sein scheint, wie "Paranoia" sich in meine Klasse "delayed_jobs" einfügt. –

Verwandte Themen