Desidero eseguire lo stub di un metodo con Mocha solo quando viene fornito un valore di parametro specifico e chiamare il metodo originale quando viene fornito un altro valore.Mocha: metodo di stub con parametro specifico ma non per altri parametri
Quando faccio così:
MyClass.any_instance.stubs(:show?).with(:wanne_show).returns(true)
ottengo una
unexpected invocation for MyClass.show?(:other_value)
so anche che posso stub tutti i parametri quando si scrive il mock senza il'with'-chiamata e quindi dai la mia specifica finta. Ma poi devo sapere il valore restituito per ogni chiamata, che non è il caso:/
tldr; C'è un modo per chiamare il metodo originale in uno stub o per stub solo parametri specifici e lasciare gli altri?
non hai mostrare come evitare usando 'any_instance' però Nella mia esperienza questo.. richiede additi derisione formale del codice di istanziazione che può essere o meno ugualmente o addirittura più soggetto a errore e fragile. – gtd