29 lines
745 B
JavaScript
29 lines
745 B
JavaScript
"use strict";
|
|
var should = require('should')
|
|
, fs = require('fs')
|
|
, path = require('path')
|
|
, streamroller = require('../lib/index.js');
|
|
|
|
describe('when the destination file is read-only', function() {
|
|
var testFile = path.join(__dirname, 'read-only-file.log');
|
|
before(function() {
|
|
fs.writeFileSync(
|
|
testFile,
|
|
"Some test content"
|
|
);
|
|
fs.chmodSync(testFile, 292 /* 0o444 - octal literals not allowed in old node */);
|
|
});
|
|
|
|
it('should generate an error when writing', function(done) {
|
|
var stream = new streamroller.RollingFileStream(testFile);
|
|
stream.on('error', function(e) {
|
|
e.code.should.eql('EACCES');
|
|
done();
|
|
});
|
|
});
|
|
|
|
after(function() {
|
|
fs.unlinkSync(testFile);
|
|
});
|
|
});
|