Angular,sinon 存根未正确执行

Angular, sinon stub not performing correctly

我正在尝试为此处的单元 (karma/jasmine) 测试模拟根作用域,但它似乎不起作用。我不确定为什么,可以使用一些帮助。在这里:

在顶部声明它:

var mockRootScope = sinon.stub();

在每个之前:

 angularMocks.module(function($provide) {
                    $provide.value('$rootScope', mockRootScope);
  });

然后在单元测试内部

  mockRootScope.returns({
                    $id: 1
                });
                console.log(mockRootScope.$id);

日志返回未定义。如果我登录 mockRootScope,它会告诉我它是一个存根(这很好),但我似乎无法弄清楚为什么它没有返回正确的值。谢谢!

存根是函数;因此术语 returns。如果您尝试以下操作,它将如您所愿:

console.log(mockRootScope().$id) // Should print $id