zoukankan      html  css  js  c++  java
  • jasmine.any(Function)

    该函数的一个使用场景:

    it(`should pass parameters to the original engine instance`, () => {
          expect(originalEngineInstance).toHaveBeenCalledWith(
            mockPath,
            mockOptions,
            jasmine.any(Function)
          );
        });
    

    语义:

    originalEngineInstance 被调用时,传递的第三个参数是任意的函数,即 jasmine.any(Function) 返回的引用。

    但是,这个任意的函数,不能是 mockCallback.

    it(`should apply optimization wrapper`, () => {
          // we check, that callback is not the original one
          expect(originalEngineInstance).not.toHaveBeenCalledWith(
            mockPath,
            mockOptions,
            mockCallback
          );
        });
    

    我们可以通过调试的方式,找到运行时第三个参数,实际是一个定义如下的函数:

    而 jasmine.any(Function) 返回的引用,如下图绿色高亮区域所示:

    真实被调用的 callback 是这个:

    即代码228行指定的函数:

    更多Jerry的原创文章,尽在:"汪子熙":

  • 相关阅读:
    正则表达式
    [创业指南]给海归技术创业兄弟的九个忠告
    about avast
    设计模式Hibernate
    job desc
    把INT转换成2进制等
    微服务调用跟踪
    Redis 分布式锁实现
    jquery中的$.ajax()方法
    订单从ftp写入到b2b
  • 原文地址:https://www.cnblogs.com/sap-jerry/p/15370492.html
Copyright © 2011-2022 走看看