summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorezubarev <zubarev.eugene@gmail.com>2016-05-06 13:46:52 +0600
committerezubarev <zubarev.eugene@gmail.com>2016-05-06 13:46:52 +0600
commit667affc619e8b688c0be87c7da72667fea1c8781 (patch)
tree690f4b2bf9f1a51049f7a5efcbcec3c44dff0549
parent6dc73a3e0454a8c02d3b996bc908860c82d21f84 (diff)
downloadasync-667affc619e8b688c0be87c7da72667fea1c8781.tar.gz
Convert console functions tests to mocha
-rw-r--r--mocha_test/consoleFunctions.js71
-rwxr-xr-xtest/test-async.js68
2 files changed, 71 insertions, 68 deletions
diff --git a/mocha_test/consoleFunctions.js b/mocha_test/consoleFunctions.js
new file mode 100644
index 0000000..616ac1d
--- /dev/null
+++ b/mocha_test/consoleFunctions.js
@@ -0,0 +1,71 @@
+var async = require('../lib');
+var expect = require('chai').expect;
+var assert = require('assert');
+
+describe('console functions', function() {
+
+ var names = [
+ 'log',
+ 'dir',
+ /* 'info'
+ 'warn'
+ 'error' */
+ ];
+
+ // generates tests for console functions such as async.log
+ names.forEach(function(name) {
+ if (typeof console !== 'undefined') {
+ it(name, function(done) {
+ var fn = function(arg1, callback){
+ expect(arg1).to.equal('one');
+ setTimeout(function(){callback(null, 'test');}, 0);
+ };
+ var fn_err = function(arg1, callback){
+ expect(arg1).to.equal('one');
+ setTimeout(function(){callback('error');}, 0);
+ };
+ var _console_fn = console[name];
+ var _error = console.error;
+ console[name] = function(val){
+ expect(val).to.equal('test');
+ expect(arguments.length).to.equal(1);
+ console.error = function(val){
+ expect(val).to.equal('error');
+ console[name] = _console_fn;
+ console.error = _error;
+ done();
+ };
+ async[name](fn_err, 'one');
+ };
+ async[name](fn, 'one');
+ });
+
+ it(name + ' with multiple result params', function(done) {
+ var fn = function(callback){callback(null,'one','two','three');};
+ var _console_fn = console[name];
+ var called_with = [];
+ console[name] = function(x){
+ called_with.push(x);
+ };
+ async[name](fn);
+ expect(called_with).to.eql(['one','two','three']);
+ console[name] = _console_fn;
+ done();
+ });
+ }
+
+ // browser-only test
+ if (typeof window !== 'undefined') {
+ it(name + ' without console.' + name, function(done) {
+ var _console = window.console;
+ window.console = undefined;
+ var fn = function(callback){callback(null, 'val');};
+ var fn_err = function(callback){callback('error');};
+ async[name](fn);
+ async[name](fn_err);
+ window.console = _console;
+ done();
+ });
+ }
+ });
+});
diff --git a/test/test-async.js b/test/test-async.js
index 694f4bc..b33bf0f 100755
--- a/test/test-async.js
+++ b/test/test-async.js
@@ -4,71 +4,3 @@
*/
require('babel-core/register');
-var async = require('../lib');
-
-// generates tests for console functions such as async.log
-var console_fn_tests = function(name){
-
- if (typeof console !== 'undefined') {
- exports[name] = function(test){
- test.expect(5);
- var fn = function(arg1, callback){
- test.equals(arg1, 'one');
- setTimeout(function(){callback(null, 'test');}, 0);
- };
- var fn_err = function(arg1, callback){
- test.equals(arg1, 'one');
- setTimeout(function(){callback('error');}, 0);
- };
- var _console_fn = console[name];
- var _error = console.error;
- console[name] = function(val){
- test.equals(val, 'test');
- test.equals(arguments.length, 1);
- console.error = function(val){
- test.equals(val, 'error');
- console[name] = _console_fn;
- console.error = _error;
- test.done();
- };
- async[name](fn_err, 'one');
- };
- async[name](fn, 'one');
- };
-
- exports[name + ' with multiple result params'] = function(test){
- test.expect(1);
- var fn = function(callback){callback(null,'one','two','three');};
- var _console_fn = console[name];
- var called_with = [];
- console[name] = function(x){
- called_with.push(x);
- };
- async[name](fn);
- test.same(called_with, ['one','two','three']);
- console[name] = _console_fn;
- test.done();
- };
- }
-
- // browser-only test
- exports[name + ' without console.' + name] = function(test){
- if (typeof window !== 'undefined') {
- var _console = window.console;
- window.console = undefined;
- var fn = function(callback){callback(null, 'val');};
- var fn_err = function(callback){callback('error');};
- async[name](fn);
- async[name](fn_err);
- window.console = _console;
- }
- test.done();
- };
-
-};
-
-console_fn_tests('log');
-console_fn_tests('dir');
-/*console_fn_tests('info');
-console_fn_tests('warn');
-console_fn_tests('error');*/