【问题标题】:rx.js testing object equality by structurerx.js 通过结构测试对象相等性
【发布时间】:2013-07-30 10:48:58
【问题描述】:

我有一个发出 JS 对象的 observable,我想在我的测试中断言我所做的 observable 转换将产生正确的 JS 对象。问题是我不明白 rx.js 正在使用什么样的断言,因为应该失败的测试正在通过。

例如,我希望这个测试 based on one from the examples directory 失败,但它没有。请注意,生成的值为{ prop: 42 },而预期值为{ prop: 43 }

test('returnValue Basic', function () {
    var scheduler = new TestScheduler();
    var results = scheduler.startWithCreate(function () {
        return Observable.returnValue({ prop: 42 }, scheduler);
    });

    var expectedMessages = [
        onNext(201, { prop: 43 }),
        onCompleted(201)
    ];

    CollectionAssert.assertEqual(expectedMessages, results.messages);
});

有谁知道问题出在哪里,我该如何解决?我了解 JavaScript 中的对象相等性,但这是下一步。从上面的测试中可以明显看出 rx.js 没有使用引用相等,也没有使用结构相等。

【问题讨论】:

    标签: javascript system.reactive rxjs


    【解决方案1】:

    您是否在控制台中查看过错误? JS 测试框架通常会在访问undefined 上的属性的测试代码面前死掉。

    没有看到你的整个 JS 文件,我只能猜测你没有定义全局变量:TestSchedulerObservableCollectionAssertonNextonCompleted

    【讨论】:

    猜你喜欢
    • 2015-12-23
    • 1970-01-01
    • 1970-01-01
    • 2011-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多