Javascript 使用Jasmine和spys验证instanceof

Javascript 使用Jasmine和spys验证instanceof,javascript,jasmine,Javascript,Jasmine,在较早版本的Jasmine中,这种类型的测试用于工作: it('is an example', function () { var spy = spyOn(window, 'SomeClass'); var listItem = new ListItem(stubMarkerData()); expect(listItem.classInstance instanceof SomeClass).toBe(true); }); 然而,现在它只会说false。这些测试已经进

在较早版本的Jasmine中,这种类型的测试用于工作:

it('is an example', function () {
    var spy = spyOn(window, 'SomeClass');
    var listItem = new ListItem(stubMarkerData());
    expect(listItem.classInstance instanceof SomeClass).toBe(true);
});
然而,现在它只会说
false
。这些测试已经进行了2-5年,只是在尝试将Jasmine升级到最新版本后不久才失败

我尝试了
.toEqual(jasmine.any(SomeClass))
,但由于
预期({})等于,这也失败了。

我很确定这和间谍有关,但我不确定为什么它以前能用,现在不行,我也不确定如果没有一些古怪的工作环境,如何测试

我目前唯一的工作就是做这样的事情,但我不喜欢:

it('is an example', function () {
    var spy = spyOn(window, 'SomeClass').and.callFake(function () {
      return {theClass: true}
    });
    var listItem = new ListItem(stubMarkerData());
    expect(listItem.classInstance.theClass).toBeTrue();
});