PHP WebShell
Текущая директория: /opt/BitGoJS/node_modules/proxyquire/examples/async
Просмотр файла: foo-tests.js
'use strict'
var path = require('path')
require('../example-utils').listModuleAndTests(path.resolve(__dirname, '/foo.js'), __filename)
// Overriding callbacks that would normally be async will cause them to call back immediately
// Thus allowing you to run synchronous tests against async APIs.
var proxyquire = require('../..')
var assert = require('assert')
var readdirError = new Error('some error')
var fsStub = { }
var calledBack
var foo = proxyquire('./foo', { fs: fsStub })
/*
* Test caps locking of returned files
*/
fsStub.readdir = function (dir, cb) { cb(null, ['file1', 'file2']) }
calledBack = false
foo.filesAllCaps('./somedir', function (err, files) {
assert.strictEqual(err, null)
assert.strictEqual(files[0], 'FILE1')
assert.strictEqual(files[1], 'FILE2')
calledBack = true
})
// fs.readdir and thus filesAllCaps calls back before we get here, which means the code ran synchronously
assert(calledBack)
/*
* Test error propagation
*/
fsStub.readdir = function (dir, cb) { cb(readdirError) }
foo.filesAllCaps('./somedir', function (err, files) {
assert.strictEqual(err, readdirError)
})
console.log('*** All asserts passed ***')
Выполнить команду
Для локальной разработки. Не используйте в интернете!