有没有办法用grunt任务自动生成karma.conf.js?

时间:2014-02-18 00:51:11

标签: angularjs gruntjs yeoman bower

我一直在使用Yeoman.io base angularjs生成器附带的gruntfile的修改版本,而grunt-bower-install命令对于保持我的基本index.html文件是最新的很方便与bower依赖。

但是,当我执行bower安装(包)--save然后grunt bower-install时,我的index.html更新,但我的karma.conf.js没有更新,这意味着我需要手动添加新文件当karma运行测试套件时要加载的文件列表(否则注入器尝试注入不存在的包时失败)。

有没有简单易用的方法将其添加到我的grunt工作流程中?这不是世界的尽头,但却是容易忘记的事情之一。

1 个答案:

答案 0 :(得分:4)

我实际上想出了解决这个问题的方法。查看https://github.com/stephenplusplus/grunt-bower-install/issues/35#issuecomment-32084805

'bower-install': {
  app: {
    src: '<%= yeoman.app %>/index.html',
    ignorePath: '<%= yeoman.app %>/'
  },
  test: {
    src: 'karma.conf.js',
    fileTypes: {
      js: {
        block: /(([\s\t]*)\/\/\s*bower:*(\S*))(\n|\r|.)*?(\/\/\s*endbower)/gi,
        detect: {
          js: /'.*\.js'/gi
        },
        replace: {
          js: '\'{{filePath}}\','
        }
      }
    }
  }
}