Adapter for YUI3 testing framework for Bender.js.
npm install benderjs-yui
Add benderjs-yui to the plugins array in the bender.js configuration file:
var config = {
applications: {...}
browsers: [...],
plugins: ['benderjs-yui'], // load the plugin
tests: {...}
};
module.exports = config;Set yui as a framework for entire project or a specific tests group:
var config = {
applications: {...}
browsers: [...],
framework: 'yui', // use for entire project
plugins: ['benderjs-yui'],
tests: {
Foo: {
basePath: '',
framework: 'yui' // use for a specific tests group
paths: [...]
}
}
};
module.exports = config;To run a test case use bender.test API:
bender.test({
'test foo': function () {
bender.assert.areEqual(5, 5);
bender.assert.areNotEqual(5, 6);
},
'test bar': function () {...}
});Some of YUI namespaces were exposed in bender namespace, at the moment you can use:
bender.Y->Ybender.assert->Y.Assertbender.objectAssert->Y.ObjectAssertbender.arrayAssert->Y.ArrayAssert
- single test execution
- nested test suites
You may create multiple nested suites.
To do so, in test suite passed to bender.test create an object containing property suite set to true.
bender.test({
'test foo': function () {
bender.assert.areEqual(5, 5);
bender.assert.areNotEqual(5, 6);
},
'test suite': {
suite: true,
'test bar': function() {
bender.assert.areNotEqual('bar','baz');
},
'test bar2': function() {
bender.assert.areNotEqual('bar2','baz');
},
'test nested suite': {
suite: true,
'test baz': function() {
bender.assert.areEqual('baz','baz');
}
}
}
});If you provide setUp or tearDown functions, they will be fired for all tests in the suite, but not for the tests in nested suites.
MIT, for license details see: LICENSE.md.