SAP 电商云 Spartacus UI SSR 单元测试里的 callFake
生活随笔
收集整理的這篇文章主要介紹了
SAP 电商云 Spartacus UI SSR 单元测试里的 callFake
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
callFake 的接口定義可以在 jasmine.js 里找到:
SpyStrategy.callFake, 返回 Spy 對象。
spy1 即 originalEngine,二者指向同一個對象實例:
只要 spy1 即 originalEngine 這個函數被調用,則返回 callFake 指定的 mock 版本的實現:return originalEngineInstance,后者也是個 mock 對象。
engine 本身是 Spartacus SSR 標準的實現,被 decorator 之后返回的新的函數,可以執行:
該函數通過閉包的方式,保存了輸入參數 ngExpressEngine 的引用,而后者已經被 mock 過了:
當第50行調用這個 engine 函數時,
執行的 ngExpressEngine 即是 mock 過的函數 spy1:
spy1 一旦被調用,就會返回 mock 版本的函數,即返回 originalEngineInstance 實例。
更多Jerry的原創文章,盡在:“汪子熙”:
總結
以上是生活随笔為你收集整理的SAP 电商云 Spartacus UI SSR 单元测试里的 callFake的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 炒海带怎么做
- 下一篇: jasmine.any(Function