Logs support.
Added /logs endpoint with basic logger and LoggerAdapter.
This commit is contained in:
64
spec/FileLoggerAdapter.spec.js
Normal file
64
spec/FileLoggerAdapter.spec.js
Normal file
@@ -0,0 +1,64 @@
|
||||
var FileLoggerAdapter = require('../src/Adapters/Logger/FileLoggerAdapter').FileLoggerAdapter;
|
||||
var Parse = require('parse/node').Parse;
|
||||
var request = require('request');
|
||||
var fs = require('fs');
|
||||
|
||||
var LOGS_FOLDER = './test_logs/';
|
||||
|
||||
var deleteFolderRecursive = function(path) {
|
||||
if( fs.existsSync(path) ) {
|
||||
fs.readdirSync(path).forEach(function(file,index){
|
||||
var curPath = path + "/" + file;
|
||||
if(fs.lstatSync(curPath).isDirectory()) { // recurse
|
||||
deleteFolderRecursive(curPath);
|
||||
} else { // delete file
|
||||
fs.unlinkSync(curPath);
|
||||
}
|
||||
});
|
||||
fs.rmdirSync(path);
|
||||
}
|
||||
};
|
||||
|
||||
describe('info logs', () => {
|
||||
|
||||
afterEach((done) => {
|
||||
deleteFolderRecursive(LOGS_FOLDER);
|
||||
done();
|
||||
});
|
||||
|
||||
it("Verify INFO logs", (done) => {
|
||||
var fileLoggerAdapter = new FileLoggerAdapter({
|
||||
logsFolder: LOGS_FOLDER
|
||||
});
|
||||
fileLoggerAdapter.info('testing info logs', () => {
|
||||
fileLoggerAdapter.query({
|
||||
size: 1,
|
||||
level: 'info'
|
||||
}, (results) => {
|
||||
expect(results[0].message).toEqual('testing info logs');
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('error logs', () => {
|
||||
|
||||
afterEach((done) => {
|
||||
deleteFolderRecursive(LOGS_FOLDER);
|
||||
done();
|
||||
});
|
||||
|
||||
it("Verify ERROR logs", (done) => {
|
||||
var fileLoggerAdapter = new FileLoggerAdapter();
|
||||
fileLoggerAdapter.error('testing error logs', () => {
|
||||
fileLoggerAdapter.query({
|
||||
size: 1,
|
||||
level: 'error'
|
||||
}, (results) => {
|
||||
expect(results[0].message).toEqual('testing error logs');
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
55
spec/LoggerController.spec.js
Normal file
55
spec/LoggerController.spec.js
Normal file
@@ -0,0 +1,55 @@
|
||||
var LoggerController = require('../src/Controllers/LoggerController').LoggerController;
|
||||
var FileLoggerAdapter = require('../src/Adapters/Logger/FileLoggerAdapter').FileLoggerAdapter;
|
||||
|
||||
describe('LoggerController', () => {
|
||||
it('can check valid master key of request', (done) => {
|
||||
// Make mock request
|
||||
var request = {
|
||||
auth: {
|
||||
isMaster: true
|
||||
},
|
||||
query: {}
|
||||
};
|
||||
|
||||
var loggerController = new LoggerController(new FileLoggerAdapter());
|
||||
|
||||
expect(() => {
|
||||
loggerController.handleGET(request);
|
||||
}).not.toThrow();
|
||||
done();
|
||||
});
|
||||
|
||||
it('can check invalid construction of controller', (done) => {
|
||||
// Make mock request
|
||||
var request = {
|
||||
auth: {
|
||||
isMaster: true
|
||||
},
|
||||
query: {}
|
||||
};
|
||||
|
||||
var loggerController = new LoggerController();
|
||||
|
||||
expect(() => {
|
||||
loggerController.handleGET(request);
|
||||
}).toThrow();
|
||||
done();
|
||||
});
|
||||
|
||||
it('can check invalid master key of request', (done) => {
|
||||
// Make mock request
|
||||
var request = {
|
||||
auth: {
|
||||
isMaster: false
|
||||
},
|
||||
query: {}
|
||||
};
|
||||
|
||||
var loggerController = new LoggerController(new FileLoggerAdapter());
|
||||
|
||||
expect(() => {
|
||||
loggerController.handleGET(request);
|
||||
}).toThrow();
|
||||
done();
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user