SAP 电商云 Spartacus UI 单元测试的依赖隔离设置举例
看一个具体的例子:
DeliveryModeComponent,依赖到的一个服务为 CheckoutDeliveryFacade,其实现类为 CheckoutDeliveryService.
因此,在我们的单元测试里,设计一个 MockCheckoutDeliveryService:
其方法 isSetDeliveryModeBusy, 来自 isSetDeliveryModeBusy$ 这个 behaviorSubject:
这样,我们只需要控制 isSetDeliveryModeBusy$ 这个 BehaviorSubject 的值,就能够随意调整 CheckoutDeliveryService.isSetDeliveryModeBusy 的返回值了。
比如这样:
isSetDeliveryModeBusy$.next(false);
更多Jerry的原创文章,尽在:“汪子熙”:
SAP 电商云 Spartacus UI 单元测试的依赖隔离设置举例相关推荐
- SAP 电商云 Spartacus UI 里如何捕捉语言设置的更改
我们知道在 SAP 电商云 Spartacus UI 里,用户可以通过下拉菜单更改当前访问 site 的语言: 监控语言变化的代码: this.subscription.add(this.langua ...
- SAP 电商云 Spartacus UI DeliveryComponent 的依赖设计
该 Component 具有5个依赖: 为了修复 bug,我需要引入 checkout service 和 cart service. 如果直接在该构造函数里注入,这实际上算是修改了 construc ...
- SAP 电商云 Spartacus UI 产品搜索结果的设计明细
我们使用如下 url 访问 SAP 电商云 Spartacus UI 产品搜索页面: http://localhost:4000/electronics-spa/en/USD/search/sony ...
- Mobile first 设计思路在 SAP 电商云 Spartacus UI 中的设计体现一例
关于 Mobile First 的概念,请查看我这篇文章:什么是前端开发中的 mobile first 策略. 下图是 SAP 电商云 Spartacus UI 的搜索结果页面: 其布局设计:temp ...
- SAP 电商云 Spartacus UI ComponentDataProvider defer 工厂函数
为什么 this.componentService.getItems 最后就触发到 Component-data.provider.ts 工厂函数的执行了? 29行的 getService: getS ...
- 在 SAP 电商云 Spartacus UI 里手动注入 module 的几种排列组合
先把所有的排列组合罗列如下: (1) 通过构造函数注入 QuickOrderFacade,但不调用其方法 (2) 通过构造函数注入 QuickOrderFacade,调用其方法 (3) 手动通过 in ...
- SAP 电商云 Spartacus UI Proxy Facade 的一个实际例子
如何理解 SAP 电商云 Spartacus UI 中的 proxy facade? Jerry 这篇文章什么是 SAP 电商云 Spartacus UI 的 proxy façade提供了理论上的解 ...
- SAP 电商云 Spartacus UI Quick Order 主页的实现
存货单位(英語:stock keeping unit,SKU/ˌɛsˌkeɪˈjuː/),也翻译为库存单元,是一個會計學名詞,定义为库存管理中的最小可用单元,例如纺织品中一个SKU通常表示规格.颜色. ...
- SAP 电商云 Spartacus UI 从 CMS 取回 slots 和 component 之后的处理
从前一篇文章SAP 电商云 Spartacus UI 的双重 layout 配置层设计 我们得知,Spartacus 层面的 layout-config.ts 可以控制 page template 应 ...
最新文章
- python调用zabbix api接口实时展示数据
- 智能机器人及其应用ppt课件_智能工业机器人应用再获成功!
- [导入]相片: 23853741.jpg
- php js 验证码,js实现验证码的方法
- 小米5安卓使用微信X5 Blink内核调试
- javamail 解码 base64 html格式邮件_python使用QQ邮箱实现自动发送邮件
- c语言第六次上机作业,C语言第五次上机作业参考答案
- java返回datatable_(转)在JAVA实现DataTable对象(三)——DataTable对象实现
- 读书笔记 - js高级程序设计 - 第四章 变量 作用域 和 内存问题
- python课程设计实验报告-Python语言课程设计报告格式.doc
- XML/HTML/CSS/JS之间的区别和联系
- 微博缓存视频导出自行解决方案
- Python生成彩色字符画
- Python更新失败:SSL错误——Conda/Python
- android打开位置服务,Android - 位置定位(Location)服务(Service)类的基本操作
- rk3288 Android 8,RK3288W Android8.1开发日志(一)
- 一个app从设想到上线运营的完整过程
- JAVA常见的命名规则:见名知意
- how to upload directory to github(怎么把文件目录上传到github)
- kubectl命令行管理工具