mirror of
https://github.com/overleaf/overleaf.git
synced 2024-11-21 20:47:08 -05:00
All logging manager tests working
This commit is contained in:
parent
6961f41488
commit
02356c7f27
1 changed files with 35 additions and 34 deletions
|
@ -4,6 +4,8 @@ const chai = require('chai')
|
|||
const path = require('path')
|
||||
const sinon = require('sinon')
|
||||
const sinonChai = require('sinon-chai')
|
||||
const { promises } = require('dns')
|
||||
//const fetchMock = require('fetch-mock')
|
||||
|
||||
chai.use(sinonChai)
|
||||
chai.should()
|
||||
|
@ -48,7 +50,10 @@ describe('LoggingManager', function () {
|
|||
this.Fetch = sinon.stub().resolves(this.fetchResponse)
|
||||
this.Fs = {
|
||||
readFile: sinon.stub(),
|
||||
access: sinon.stub()
|
||||
access: sinon.stub(),
|
||||
promises: {
|
||||
readFile: sinon.stub()
|
||||
}
|
||||
}
|
||||
this.stackdriverStreamConfig = { stream: 'stackdriver' }
|
||||
this.stackdriverClient = {
|
||||
|
@ -296,24 +301,17 @@ describe('LoggingManager', function () {
|
|||
})
|
||||
|
||||
describe('checkLogLevel', function () {
|
||||
beforeEach(function () {
|
||||
this.Fs.access.yields(null)
|
||||
})
|
||||
|
||||
|
||||
it('should request log level override from the config map', function () {
|
||||
this.logger.checkLogLevel()
|
||||
this.Fs.access.should.have.been.calledWithMatch(
|
||||
'/logging'
|
||||
)
|
||||
this.Fs.readFile.should.have.been.calledWithMatch(
|
||||
it('should request log level override from the config map', async function () {
|
||||
await this.logger.checkLogLevel()
|
||||
this.Fs.promises.readFile.should.have.been.calledWithMatch(
|
||||
'/logging/tracingEndTime'
|
||||
)
|
||||
})
|
||||
|
||||
describe('when read errors', function () {
|
||||
beforeEach(function () {
|
||||
this.Fs.readFile.yields(new Error('error'))
|
||||
this.Fs.promises.readFile.yields(new Error('error'))
|
||||
this.logger.checkLogLevel()
|
||||
})
|
||||
|
||||
|
@ -326,7 +324,7 @@ describe('LoggingManager', function () {
|
|||
|
||||
describe('when the file is empty', function () {
|
||||
beforeEach(function () {
|
||||
this.Fs.readFile.yields(null, '')
|
||||
this.Fs.promises.readFile.yields(null, '')
|
||||
this.logger.checkLogLevel()
|
||||
})
|
||||
|
||||
|
@ -339,7 +337,7 @@ describe('LoggingManager', function () {
|
|||
|
||||
describe('when time value returned that is less than current time', function () {
|
||||
beforeEach(function () {
|
||||
this.Fs.readFile.yields(null, '1')
|
||||
this.Fs.promises.readFile.yields(null, '1')
|
||||
this.logger.checkLogLevel()
|
||||
})
|
||||
|
||||
|
@ -352,10 +350,10 @@ describe('LoggingManager', function () {
|
|||
|
||||
describe('when time value returned that is more than current time', function () {
|
||||
describe('when level is already set', function () {
|
||||
beforeEach(function () {
|
||||
beforeEach(async function () {
|
||||
this.bunyanLogger.level.returns(10)
|
||||
this.Fs.readFile.yields(null, (this.start + 1000).toString())
|
||||
this.logger.checkLogLevel()
|
||||
this.Fs.promises.readFile.returns((this.start + 1000).toString())
|
||||
await this.logger.checkLogLevel()
|
||||
})
|
||||
|
||||
it('should set trace level', function () {
|
||||
|
@ -366,10 +364,10 @@ describe('LoggingManager', function () {
|
|||
})
|
||||
|
||||
describe('when level is not already set', function () {
|
||||
beforeEach(function () {
|
||||
beforeEach(async function () {
|
||||
this.bunyanLogger.level.returns(20)
|
||||
this.Fs.readFile.yields(null, (this.start + 1000).toString())
|
||||
this.logger.checkLogLevel()
|
||||
this.Fs.promises.readFile.returns((this.start + 1000).toString())
|
||||
await this.logger.checkLogLevel()
|
||||
})
|
||||
|
||||
it('should set trace level', function () {
|
||||
|
@ -379,7 +377,7 @@ describe('LoggingManager', function () {
|
|||
})
|
||||
})
|
||||
|
||||
describe('when not running in GKE', function () {
|
||||
describe('when using metadata', function () {
|
||||
beforeEach(function () {
|
||||
process.env.USE_METADATA = 'TRUE'
|
||||
this.logger = this.LoggingManager.initialize(this.loggerName)
|
||||
|
@ -398,13 +396,14 @@ describe('LoggingManager', function () {
|
|||
}
|
||||
}
|
||||
const uri = `http://metadata.google.internal/computeMetadata/v1/project/attributes/${this.loggerName}-setLogLevelEndTime`
|
||||
this.Fetch.fetch.should.have.been.calledWithMatch(uri,options)
|
||||
this.Fetch.should.have.been.calledWithMatch(uri,options)
|
||||
})
|
||||
|
||||
describe('when request has error', function() {
|
||||
beforeEach(function() {
|
||||
this.Request.yields('error')
|
||||
this.logger.checkLogLevel()
|
||||
beforeEach(async function() {
|
||||
this.Fetch = sinon.stub().throws()
|
||||
//this.Request.yields('error')
|
||||
await this.logger.checkLogLevel()
|
||||
})
|
||||
|
||||
it('should only set default level', function() {
|
||||
|
@ -415,9 +414,10 @@ describe('LoggingManager', function () {
|
|||
})
|
||||
|
||||
describe('when statusCode is not 200', function() {
|
||||
beforeEach(function() {
|
||||
this.Request.yields(null, { statusCode: 404 })
|
||||
this.logger.checkLogLevel()
|
||||
beforeEach(async function() {
|
||||
this.fetchResponse.status = 404
|
||||
//this.Request.yields(null, { statusCode: 404 })
|
||||
await this.logger.checkLogLevel()
|
||||
})
|
||||
|
||||
it('should only set default level', function() {
|
||||
|
@ -428,9 +428,10 @@ describe('LoggingManager', function () {
|
|||
})
|
||||
|
||||
describe('when time value returned that is less than current time', function() {
|
||||
beforeEach(function() {
|
||||
this.Request.yields(null, { statusCode: 200 }, '1')
|
||||
this.logger.checkLogLevel()
|
||||
beforeEach(async function() {
|
||||
//this.Request.yields(null, { statusCode: 200 }, '1')
|
||||
this.fetchResponse.text = sinon.stub().resolves('1')
|
||||
await this.logger.checkLogLevel()
|
||||
})
|
||||
|
||||
it('should only set default level', function() {
|
||||
|
@ -452,7 +453,7 @@ describe('LoggingManager', function () {
|
|||
await this.logger.checkLogLevel()
|
||||
})
|
||||
|
||||
it.only('should set trace level', function() {
|
||||
it('should set trace level', function() {
|
||||
this.bunyanLogger.level.should.have.been.calledOnce.and.calledWith(
|
||||
'trace'
|
||||
)
|
||||
|
@ -460,7 +461,7 @@ describe('LoggingManager', function () {
|
|||
})
|
||||
|
||||
describe('when level is not already set', function() {
|
||||
beforeEach(function() {
|
||||
beforeEach(async function() {
|
||||
this.bunyanLogger.level.returns(20)
|
||||
this.fetchResponse.text = sinon.stub().resolves(this.start + 1000)
|
||||
this.Fetch.fetch = sinon.stub().resolves(this.fetchResponse)
|
||||
|
@ -469,7 +470,7 @@ describe('LoggingManager', function () {
|
|||
|
||||
|
||||
//{data: this.start + 1000, status: 200}
|
||||
this.logger.checkLogLevel()
|
||||
await this.logger.checkLogLevel()
|
||||
})
|
||||
|
||||
it('should set trace level', function() {
|
||||
|
|
Loading…
Reference in a new issue