2011-09-18 19 views

risposta

13

In entrambe le versioni 2 e v1.3.2, sono semplicemente alias l'uno dell'altro. In v1.3.2 stub è un alias di stub!

https://github.com/dchelimsky/rspec/blob/v1.3.2/lib/spec/mocks/methods.rb#L12

Mentre in v2.6 di rspec 2, stub! è un alias di stub

https://github.com/rspec/rspec-mocks/blob/master/lib/rspec/mocks/methods.rb#L12

Tuttavia in v1.1.4, stub è un alias per mock e stub! è un metodo separato. Dai documenti, sembrerebbe che lo stub! in questa prima versione sia stato utilizzato per aggiungere metodi a oggetti esistenti, creando una "simulazione parziale".

La spiegazione:
https://github.com/dchelimsky/rspec/blob/1.1.4/lib/spec/mocks.rb#L43

Le definizioni:
https://github.com/dchelimsky/rspec/blob/1.1.4/lib/spec/mocks/spec_methods.rb#L27
https://github.com/dchelimsky/rspec/blob/1.1.4/lib/spec/mocks/methods.rb#L12

Problemi correlati