首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当使用RxJS ()时,茉莉测试在toBeObservable 7中总是失败

当使用RxJS ()时,茉莉测试在toBeObservable 7中总是失败
EN

Stack Overflow用户
提问于 2022-01-14 15:37:39
回答 2查看 1.1K关注 0票数 0

我更新了我的依赖项,现在面临以下错误消息:

代码语言:javascript
复制
DEPRECATION: The matcher factory for "toBeObservable" accepts custom equality testers, but this parameter will no longer be passed in a future release. See <https://jasmine.github.io/tutorials/upgrading_to_Jasmine_4.0#matchers-cet> for details.

Error: Expected $[0].notification to be a kind of Object, but was Notification({ kind: 'N', value: true, error: undefined, hasValue: true }).
            at <Jasmine>
            at toBeObservableComparer (node_modules/jasmine-marbles/es6/index.js:80:1)
            at <Jasmine>

测试非常简单:

代码语言:javascript
复制
const expected = cold('a', {a: true});
expect(new BehaviorSubject(true)).toBeObservable(expected);

它可能必须对弃用通知做些什么,但我只是使用来自最新版本的toBeObservable()包的jasmine-marbles,而看不到自定义参数。我也不明白为什么Notification不是一种Object

版本:

7.5.2

  • jasmine-core: 4.0.0

  • jasmine-marbles: 0.8.4

  • karma-jasmine:

  • rxjs: 4.0.1

该脚本在rxjs 6.6.7上工作。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-01-16 02:32:18

我认为新的文档显示了新的expectObservable:

代码语言:javascript
复制
expectObservable(new BehaviorSubject(true).asObservable()).toBe(expected);

查看这里的文档:https://github.com/ReactiveX/rxjs/blob/master/docs_app/content/guide/testing/marble-testing.md#marble-syntax

票数 1
EN

Stack Overflow用户

发布于 2022-09-02 12:48:20

茉莉花-大理石版=> 0.9.0支持RxJS 7.x

https://www.npmjs.com/package/jasmine-marbles

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70713035

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档