mocha-data-driven
Version:
data driven testing for mocha
34 lines (28 loc) • 837 B
JavaScript
/*!
* data-driven
* Copyright(c) 2013 Fluent Software Solutions Ltd <info@fluentsoftware.co.uk>
* MIT Licensed
*/
module.exports = function(data, fn) {
var mochaIt = it
data.forEach(function(testData) {
try {
it = function(title, f) {
for (var key in testData) {
title = title.replace('{'+key+'}',testData[key])
}
var testFn = f.length < 2 ?
function() {
f.call(this,testData)
} :
function(done) {
f.call(this,testData,done)
}
mochaIt(title, testFn)
}
fn()
} finally {
it = mochaIt
}
})
}