将角籽茉莉花单元测试转换为coffeescript

肯·查特菲尔德

作为练习,我试图将angular-seed回购中包含的业力单元测试从js转换为coffee脚本。特别是,我在tests/unit/directivesSpec.js定义简单值服务测试集方面遇到问题这是我的咖啡脚本代码:

 1  describe 'directives', ->
 2  beforeEach module 'myApp.directives'
 3  
 4  describe 'app-version', ->
 5    it 'should print current version', ->
 6      module ($provide) ->
 7        $provide.value 'version', 'TEST_VER'
 8      inject ($compile, $rootScope) ->
 9        element = $compile('<span app-version></span>')($rootScope)
10        expect(element.text()).toEqual 'TEST_VER'

当将咖啡脚本代码按行编译时,似乎出现问题6

module(function($provide) {
  return $provide.value('version', 'TEST_VER');
});

并导致我的测试失败并显示以下错误:

Error: [ng:areq] Argument 'fn' is not a function, got Object
http://errors.angularjs.org/1.2.4/ng/areq?p0=fn&p1=not%20a%20function%2C%20got%20Object
    at /Data/src/ngfrontend-seed/app/vendor/angular/angular.js:78:12
    at assertArg (/Data/src/ngfrontend-seed/app/vendor/angular/angular.js:1358:11)
    at assertArgFn (/Data/src/ngfrontend-seed/app/vendor/angular/angular.js:1368:3)

如果删除该return语句,则测试运行正常。参考文档中示例,尚不能立即清楚模块函数接受什么作为返回值,但是该return语句似乎在破坏事情。

有关如何解决此问题的任何想法,还是在编写测​​试规范时坚持使用纯JavaScript?

男生

Coffeescript隐式返回每个函数的最后一个表达式。
但是您可以添加一个明确的空return语句,如下所示:

6      module ($provide) ->
7        $provide.value 'version', 'TEST_VER'
8        return

它将编译为:

module(function($provide) {
  $provide.value('version', 'TEST_VER'); //without return
});

另请参见此线程以获取更多信息。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将角籽茉莉花单元测试转换为coffeescript

来自分类Dev

单元测试Angularjs茉莉花

来自分类Dev

TypeError单元测试茉莉花

来自分类Dev

茉莉花角单元测试“无法读取未定义的“属性”

来自分类Dev

控制器的角业茉莉花单元测试

来自分类Dev

茉莉花单元测试Angular-Cookie

来自分类Dev

茉莉花单元测试被称为方法

来自分类Dev

.then()中的Expect()-茉莉花单元测试,AngularJS

来自分类Dev

茉莉花:未定义Jodit,单元测试

来自分类Dev

服务/工厂的单元测试-AngularJS-茉莉花

来自分类Dev

未定义茉莉花单元测试模块

来自分类Dev

$ http超时测试茉莉花角

来自分类Dev

如何在单元测试中通过茉莉花间谍将拒绝/失败的承诺返回给角度控制器

来自分类Dev

如何使用茉莉花测试对Mapbox弹出窗口进行单元测试?

来自分类Dev

如何为需要测试其发射的角度指令进行茉莉花单元测试?

来自分类Dev

简单的茉莉角茉莉花测试无法正常工作

来自分类Dev

Resharper 2017的茉莉花单元测试状态:是否支持调试模式和AMD模块?

来自分类Dev

单元测试打字稿指令模板业力茉莉花,html未定义

来自分类Dev

Ionic Couchbase Lite业力茉莉花单元测试

来自分类Dev

为什么我的茉莉花单元测试不等待“完成”?

来自分类Dev

茉莉花单元测试不等待承诺解析

来自分类Dev

单元测试业力运行者/茉莉花分析

来自分类Dev

如何在茉莉花单元测试中模拟$ state.params

来自分类Dev

我可以在茉莉花单元测试中伪造一个存储事件吗?

来自分类Dev

茉莉花单元测试$ timeout(expect($ timeout).toHaveBeenCalledWith(n);)

来自分类Dev

模拟angularjs服务以使用茉莉花进行单元测试

来自分类Dev

茉莉花单元测试一个元素不是:hidden

来自分类Dev

在茉莉花单元测试中在ng-grid上调用selectRow

来自分类Dev

茉莉花单元测试异步控制器方法

Related 相关文章

  1. 1

    将角籽茉莉花单元测试转换为coffeescript

  2. 2

    单元测试Angularjs茉莉花

  3. 3

    TypeError单元测试茉莉花

  4. 4

    茉莉花角单元测试“无法读取未定义的“属性”

  5. 5

    控制器的角业茉莉花单元测试

  6. 6

    茉莉花单元测试Angular-Cookie

  7. 7

    茉莉花单元测试被称为方法

  8. 8

    .then()中的Expect()-茉莉花单元测试,AngularJS

  9. 9

    茉莉花:未定义Jodit,单元测试

  10. 10

    服务/工厂的单元测试-AngularJS-茉莉花

  11. 11

    未定义茉莉花单元测试模块

  12. 12

    $ http超时测试茉莉花角

  13. 13

    如何在单元测试中通过茉莉花间谍将拒绝/失败的承诺返回给角度控制器

  14. 14

    如何使用茉莉花测试对Mapbox弹出窗口进行单元测试?

  15. 15

    如何为需要测试其发射的角度指令进行茉莉花单元测试?

  16. 16

    简单的茉莉角茉莉花测试无法正常工作

  17. 17

    Resharper 2017的茉莉花单元测试状态:是否支持调试模式和AMD模块?

  18. 18

    单元测试打字稿指令模板业力茉莉花,html未定义

  19. 19

    Ionic Couchbase Lite业力茉莉花单元测试

  20. 20

    为什么我的茉莉花单元测试不等待“完成”?

  21. 21

    茉莉花单元测试不等待承诺解析

  22. 22

    单元测试业力运行者/茉莉花分析

  23. 23

    如何在茉莉花单元测试中模拟$ state.params

  24. 24

    我可以在茉莉花单元测试中伪造一个存储事件吗?

  25. 25

    茉莉花单元测试$ timeout(expect($ timeout).toHaveBeenCalledWith(n);)

  26. 26

    模拟angularjs服务以使用茉莉花进行单元测试

  27. 27

    茉莉花单元测试一个元素不是:hidden

  28. 28

    在茉莉花单元测试中在ng-grid上调用selectRow

  29. 29

    茉莉花单元测试异步控制器方法

热门标签

归档