Repo created
This commit is contained in:
parent
75dc487a7a
commit
39c29d175b
6317 changed files with 388324 additions and 2 deletions
15
core/logging/testing/build.gradle.kts
Normal file
15
core/logging/testing/build.gradle.kts
Normal 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)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -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
|
||||
}
|
||||
|
|
@ -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
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue