Repo created

This commit is contained in:
Fr4nz D13trich 2025-11-22 13:56:56 +01:00
parent 75dc487a7a
commit 39c29d175b
6317 changed files with 388324 additions and 2 deletions

View file

@ -0,0 +1,15 @@
plugins {
id(ThunderbirdPlugins.Library.kmp)
}
android {
namespace = "net.thunderbird.core.logging.testing"
}
kotlin {
sourceSets {
commonMain.dependencies {
api(projects.core.logging.api)
}
}
}

View file

@ -0,0 +1,17 @@
package net.thunderbird.core.logging.testing
import net.thunderbird.core.logging.LogLevel
import net.thunderbird.core.logging.LogLevelManager
class TestLogLevelManager : LogLevelManager {
var logLevel = LogLevel.VERBOSE
override fun override(level: LogLevel) {
logLevel = level
}
override fun restoreDefault() {
logLevel = LogLevel.VERBOSE
}
override fun current(): LogLevel = logLevel
}

View file

@ -0,0 +1,99 @@
package net.thunderbird.core.logging.testing
import net.thunderbird.core.logging.LogEvent
import net.thunderbird.core.logging.LogLevel
import net.thunderbird.core.logging.LogMessage
import net.thunderbird.core.logging.LogTag
import net.thunderbird.core.logging.Logger
/**
* A test logger that captures all log events in a list.
*/
class TestLogger() : Logger {
val events: MutableList<LogEvent> = mutableListOf()
override fun verbose(
tag: LogTag?,
throwable: Throwable?,
message: () -> LogMessage,
) {
events.add(
LogEvent(
level = LogLevel.VERBOSE,
tag = tag,
message = message(),
throwable = throwable,
timestamp = TIMESTAMP,
),
)
}
override fun debug(
tag: LogTag?,
throwable: Throwable?,
message: () -> LogMessage,
) {
events.add(
LogEvent(
level = LogLevel.DEBUG,
tag = tag,
message = message(),
throwable = throwable,
timestamp = TIMESTAMP,
),
)
}
override fun info(
tag: LogTag?,
throwable: Throwable?,
message: () -> LogMessage,
) {
events.add(
LogEvent(
level = LogLevel.INFO,
tag = tag,
message = message(),
throwable = throwable,
timestamp = TIMESTAMP,
),
)
}
override fun warn(
tag: LogTag?,
throwable: Throwable?,
message: () -> LogMessage,
) {
events.add(
LogEvent(
level = LogLevel.WARN,
tag = tag,
message = message(),
throwable = throwable,
timestamp = TIMESTAMP,
),
)
}
override fun error(
tag: LogTag?,
throwable: Throwable?,
message: () -> LogMessage,
) {
events.add(
LogEvent(
level = LogLevel.ERROR,
tag = tag,
message = message(),
throwable = throwable,
timestamp = TIMESTAMP,
),
)
}
companion object {
const val TIMESTAMP = 1000L
}
}