如何在RSpec中模拟类方法期望语法?

我对如何使用新的expect语法模拟类方法感到困惑。 这有效:

 Facebook .should_receive(:profile) .with("token") .and_return({"name" => "Hello", "id" => "14314141", "email" => "hello@me.com"}) 

这不是:

 facebook = double("Facebook") allow(facebook).to receive(:profile).with("token").and_return({"name" => "Hello", "id" => "14314141", "email" => "hello@me.com"}) 

谁能告诉我这里有什么问题?

这是你想要做的(不需要double ):

 allow(Facebook) .to receive(:profile) .with("token") .and_return({"name" => "Hello", "id" => "14314141", "email" => "hello@me.com"})