[英]How to test properties set in controller.$onInit method in angular js
我有一种情况,我在controller。$ onInit方法中初始化了一些变量。 如何测试这些属性是否设置正确?
控制者
ctrl.$onInit = function () {
ctrl.devices = _.cloneDeep(ctrl.formDevices);
};
单元测试
it('should expose device related properties to view', function () {
expect(controller.devices).toBeDefined();
};
输出量
您必须显式调用$ onInit函数。 $ componentController不会调用此函数,因为它是生命周期挂钩的一部分,并且不会运行。
有几种方法可以将$ onInit称为隐式,可以在此处找到。
检查$ onInit函数是否正确设置属性的最简单方法是调用$ onInit。 毕竟,您要测试$ onInit函数是否起作用,而不是AngularJS是否通过其生命周期挂钩。
it('should expose device related properties to view', function () {
controller.$onInit();
expect(controller.devices).toBeDefined();
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.