angularjs之browserTrigger

简介:

今天推荐一款来自angularjs源码的单元测试辅助库browserTrigger,这是来自于ngScenario的一段代码。主要用户触发浏览器型行为更新ng中scope view model的值。

这是angularjs源码中单元测试的使用browserTrigger的实例:

1
2
3
4
5
6
7
8
9
10
11
12
13
it( 'should set the model to empty string when empty option is selected' function () {
     scope.robot =  'x' ;
     compile( '<select ng-model="robot">'  +
               '<option value="">--select--</option>'  +
               '<option value="x">robot x</option>'  +
               '<option value="y">robot y</option>'  +
             '</select>' );
     expect(element).toEqualSelect( '' , [ 'x' ],  'y' );
 
     browserTrigger(element.find( 'option' ).eq(0));
     expect(element).toEqualSelect([ '' ],  'x' 'y' );
     expect(scope.robot).toBe( '' );
   });

  

在这段代码中给browserTrigger传入你希望选择的select option,则它会帮助你tigger change,选中当前option,更触发更新ng select的viewmodel。

在browserTrigger中还为我们做了很多其他输入框或者html控件的触发接口,同时也加入了浏览器的兼容性。使得我们的测试更加方便不用考虑浏览器兼容性或者不同的html控件trigger不同的事件去更新scope的值。

具体更多信息请参考ng的官方测试browserTrigger源码


本文转自破狼博客园博客,原文链接:http://www.cnblogs.com/whitewolf/p/3807063.html,如需转载请自行联系原作者

目录
打赏
0
0
0
0
50
分享
相关文章
AngularJS
AngularJS 是比较新的技术,版本 1.0 是在 2012 年发布的。 AngularJS 是由 Google 的员工 Miško Hevery 从 2009 年开始着手开发。 这是一个非常好的构想,该项目目前已由 Google 正式支持,有一个全职的开发团队继续开发和维护这个库。
1111 0

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等