草庐IT

gulp-mocha

全部标签

javascript - 在整个 mocha 测试之前运行异步代码

我正在寻找一种在整个mocha测试之前运行异步代码的方法。这是一个测试示例,它使用参数和期望数组,并循环遍历该数组中的所有项以生成函数断言。varassert=require('assert')/*globaldescribe,it*/varfn=function(value){returnvalue+''+'pancake'}vartests=[{'arg':'kitty','expect':'kittypancake'},{'arg':'doggy','expect':'doggypancake'},]describe('example',function(){tests.forE

node.js - 在 Mocha 测试期间静音 stdout 和 stderr

我首先要承认我可能正在做一些我不应该做的事情。不过既然我已经这么深了,那我倒也能明白为什么会这样了。我正在使用Mocha测试一些Node.js代码。此代码使用Winston日志库,它直接调用process.stdout.write()和process.stderr.write()(source)。它运作良好;我对这种行为没有任何提示。但是,当我对这段代码进行单元测试时,Mocha测试运行器的输出偶尔会穿插几行日志输出,这在一些记者看来很难看(dot、bdd)并且在其他(xunit)中完全无效。我想在不修改或继承Winston的情况下阻止此输出,并且如果可以避免,我想避免修改应用程序本身

javascript - Gulp 不创建文件夹?

当我缩小我的css时,我得到了一个不正确的路径,可以从各种库中获取字体。所以,我创建了一个任务,将字体从我的bower_components/文件夹移动到dist/public/fonts:gulp.task('doit',function(){gulp.src(["public/bower_components/bootstrap/dist/fonts/*","public/bower_components/font-awesome/fonts/*"]).pipe(gulp.dest("dist/public/fonts"));});基本上,这应该将我需要的任何字体放入通用字体文件夹

javascript - 如何调试 Grunt Mocha 任务?

我正在使用WebStorm来运行grunt任务。调试器成功停止在Gruntfile.js文件中的断点处,但不在我的任务文件中。在Gruntfile.js中,我注册了一个这样的任务:grunt.initConfig({...configuration...});grunt.registerTask('myTask',['mocha:myTask']);当我在相应的js文件中为测试“myTask”设置断点时,它不会停止。如何调试grunt测试?---更新---------------------------------------所以我尝试了所有可能的解决方案,但它并没有解决我的问题!我能

javascript - 如何在 Gulp 中使用 Browserify lib 为模块起别名?

Browserify自述文件描述了创建外部需求,如下所示:$browserify-r通过-rduplexer-r./my-file.js:my-module>bundle.js然后在你的页面中你可以这样做:varthrough=require('through');varduplexer=require('duplexer');varmyModule=require('my-module');/*...*/如果你想使用命令行,这很有效,但我想在gulpfile中使用Browserify。但似乎没有办法在示例中为像./myfile-js:my-module这样的模块添加名称。如果有它的选

node.js - 引导 Mocha 测试套件

我在NodeJS应用程序的多个文件中进行了大量测试。我想在Mocha执行任何测试文件之前运行引导代码。这样我就可以设置全局变量以在每个实际测试中使用。示例引导代码global.chai=require('chai');global.expect=chai.expect;global.sinon=require('sinon');似乎Mocha会按字母顺序加载/test下的所有文件,所以如果我将此引导代码命名为“bootstrap.js”,并且在“B”之后使用起始字母命名其他所有文件,则它“有效”。显然这是脆弱和糟糕的,但我不想把这个需要我的支持库的样板放在每个测试文件的顶部。我如何告诉

javascript - Mocha 测试用例 - 嵌套 it() 函数是否符合规定?

我有这种情况,我想在Mocha测试中嵌套it()测试用例。我确信这是错误的,我没有看到任何建议来做我正在做的事情,但我目前真的不知道更好的方法-基本上,我有一个“父”测试,在父测试中有一个forEach循环,其中包含所有“子”测试:it('[test]enrichment',function(done){varself=this;async.each(self.tests,function(json,cb){//it('[test]'+path.basename(json),function(done){varjsonDataForEnrichment=require(json);js

node.js - 如何为 gulp-jasmine 设置环境变量

在我的项目中,我希望服务器根据环境变量DATABASE动态使用数据库。根据此变量,我将从具有数据库名称的文件夹下加载特定于该数据库的文件。(mongodb->server/mongodb/file.js)我使用noemon为Node服务器设置环境变量(DATABASE="mongodb"),例如,当我加载数据库文件时,我使用require('./'+process.env.DATABASE+'/file').现在我的问题是我是否可以使用环境变量配置gulp-jasmine?现在我的所有测试都失败了,因为路径解析为./undefined/file。 最佳答案

node.js - Gulp管道最小功能?

可以放在Gulp管道中并且仍然可以工作的最小函数是什么?这不起作用:gulp.src('**').pipe(function(){//what'stheminimumthatcangohereandstillbeafunctionalpipe?//whatneedstobereturned?});理想情况下,这将是仅使用Gulp构建的基础模块的vanillaJS;乙烯基,通过等。 最佳答案 您的管道的问题是您正在删除glob的文件,因为您没有返回它们。使用through2,你可以这样做:constthrough=require('t

node.js - Gulp:如何更改文件的修改时间

我在下面有gulp任务,每次运行此任务时(在browsersync之前)我想更改一个文件的最后修改时间(该文件中没有任何更改,我只需要更改最后修改的时间-替代shell“触摸”命令)。有人可以告诉我最简单的方法是什么吗?谢谢!gulp.task('sass',function(){returnsass(pkg.sass.dir,{sourcemap:true,precision:10}).on('error',function(err){onError(err);}).pipe(autoprefixer({browsers:['last2version','safari5','ie8'