Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 2 additions & 5 deletions lib/LoggerBuilder.ts
Original file line number Diff line number Diff line change
Expand Up @@ -74,11 +74,8 @@ export class LoggerBuilder {
const onLoaded = () => {
if (document.readyState === 'complete' || (document.readyState === 'interactive')) {
// Up to, including, nextcloud 24 the loglevel was not exposed
self.context.level = window._oc_config?.loglevel ?? LogLevel.Warn
// Override loglevel if we are in debug mode
if (window._oc_debug) {
self.context.level = LogLevel.Debug
}
const fallback = window._oc_debug ? LogLevel.Debug : LogLevel.Warn
self.context.level = window._oc_config?.loglevel ?? fallback
document.removeEventListener('readystatechange', onLoaded)
} else {
document.addEventListener('readystatechange', onLoaded)
Expand Down
21 changes: 2 additions & 19 deletions tests/LoggerBuilder.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ describe('detect logging level', () => {
expect(logger.context.level).toBe(window._oc_config.loglevel)
})

it('with `_oc_debug` override', async () => {
it('does not override based on `_oc_debug` anymore', async () => {
setReadyState('loading')
const builder = getLoggerBuilder()
builder.detectLogLevel()
Expand All @@ -139,26 +139,9 @@ describe('detect logging level', () => {

// Level should now be set to configured one
expect('level' in builder.getContext()).toBe(true)
expect(builder.getContext().level).toBe(LogLevel.Debug)
expect(builder.getContext().level).toBe(window._oc_config.loglevel)
})

it('with `_oc_debug` override on HTML interactive phase', async () => {
setReadyState('loading')
const builder = getLoggerBuilder()
builder.detectLogLevel()

// Still loading so no level set
expect('level' in builder.getContext()).toBe(false)

// Trigger document loaded
window._oc_debug = true
setReadyState('interactive')
await new Promise(process.nextTick)

// Level should now be set to configured one
expect('level' in builder.getContext()).toBe(true)
expect(builder.getContext().level).toBe(LogLevel.Debug)
})
})
})

Expand Down