cloudfunctions/ClearingRedundantFolders/node_modules/atomically/test/integration.js
(开头部分) 7KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
'use strict'
process.setMaxListeners(1000000);
const fs = require('fs')
const path = require('path')
const {test} = require('tap')
const rimraf = require('rimraf')
const requireInject = require('require-inject')
const workdir = path.join(__dirname, path.basename(__filename, '.js'))
let testfiles = 0
function tmpFile () {
return path.join(workdir, 'test-' + (++testfiles))
}
function readFile (path) {
return fs.readFileSync(path).toString()
}
function didWriteFileAtomic (t, expected, filename, data, options, callback) {
if (options instanceof Function) {
callback = options
options = null
}
if (!options) options = {}
const actual = {}
const {writeFile: writeFileAtomic} = requireInject('../dist', {
fs: Object.assign({}, fs, {
chown (filename, uid, gid, cb) {
actual.uid = uid
actual.gid = gid
process.nextTick(cb)
},
stat (filename, cb) {
fs.stat(filename, (err, stats) => {
if (err) return cb(err)
cb(null, Object.assign(stats, expected || {}))
})
}
})
})
return writeFileAtomic(filename, data, options, err => {
t.isDeeply(actual, expected, 'ownership is as expected')
callback(err)
})
}
function didWriteFileAtomicSync (t, expected, filename, data, options) {
const actual = {}
const {writeFileSync} = requireInject('../dist', {
fs: Object.assign({}, fs, {
chownSync (filename, uid, gid) {
actual.uid = uid
actual.gid = gid
},
statSync (filename) {
const stats = fs.statSync(filename)
return Object.assign(stats, expected || {})
}
后面还有 231 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
