assert.equal internalModuleReadFile(p).toString().trim(), 'a'
describe 'process.noAsar', ->
+ errorName = if process.platform is 'win32' then 'ENOENT' else 'ENOTDIR'
+
beforeEach ->
process.noAsar = true
afterEach ->
it 'disables asar support in sync API', ->
file = path.join fixtures, 'asar', 'a.asar', 'file1'
dir = path.join fixtures, 'asar', 'a.asar', 'dir1'
- assert.throws (-> fs.readFileSync file), /ENOTDIR/
- assert.throws (-> fs.lstatSync file), /ENOTDIR/
- assert.throws (-> fs.realpathSync file), /ENOTDIR/
- assert.throws (-> fs.readdirSync dir), /ENOTDIR/
+ assert.throws (-> fs.readFileSync file), new RegExp(errorName)
+ assert.throws (-> fs.lstatSync file), new RegExp(errorName)
+ assert.throws (-> fs.realpathSync file), new RegExp(errorName)
+ assert.throws (-> fs.readdirSync dir), new RegExp(errorName)
it 'disables asar support in async API', (done) ->
file = path.join fixtures, 'asar', 'a.asar', 'file1'
dir = path.join fixtures, 'asar', 'a.asar', 'dir1'
fs.readFile file, (error) ->
- assert.equal error.code, 'ENOTDIR'
+ assert.equal error.code, errorName
fs.lstat file, (error) ->
- assert.equal error.code, 'ENOTDIR'
+ assert.equal error.code, errorName
fs.realpath file, (error) ->
- assert.equal error.code, 'ENOTDIR'
+ assert.equal error.code, errorName
fs.readdir dir, (error) ->
- assert.equal error.code, 'ENOTDIR'
+ assert.equal error.code, errorName
done()
it 'treats *.asar as normal file', ->