summaryrefslogtreecommitdiffhomepage
path: root/gui/src/shared
diff options
context:
space:
mode:
authorOskar Nyberg <oskar@mullvad.net>2021-02-15 18:10:33 +0100
committerOskar Nyberg <oskar@mullvad.net>2021-02-17 10:15:01 +0100
commitd2b55f74a2247f2a7ae87e649f9d071188570e23 (patch)
tree81b496ded74cc4496a89d0ad31f2ef15a36823bf /gui/src/shared
parent66f6c3ad02be5d3a2b3bf66667c6debc5007aeaa (diff)
downloadmullvadvpn-d2b55f74a2247f2a7ae87e649f9d071188570e23.tar.xz
mullvadvpn-d2b55f74a2247f2a7ae87e649f9d071188570e23.zip
Prevent logging when running tests
Diffstat (limited to 'gui/src/shared')
-rw-r--r--gui/src/shared/logging-types.ts2
-rw-r--r--gui/src/shared/logging.ts11
2 files changed, 11 insertions, 2 deletions
diff --git a/gui/src/shared/logging-types.ts b/gui/src/shared/logging-types.ts
index 09bd3f66cf..8b4ff9e306 100644
--- a/gui/src/shared/logging-types.ts
+++ b/gui/src/shared/logging-types.ts
@@ -8,7 +8,7 @@ export enum LogLevel {
export interface ILogOutput {
level: LogLevel;
- write(level: LogLevel, message: string): void;
+ write(level: LogLevel, message: string): void | Promise<void>;
dispose?(): void;
}
diff --git a/gui/src/shared/logging.ts b/gui/src/shared/logging.ts
index 48c290c9b5..43d0b271d9 100644
--- a/gui/src/shared/logging.ts
+++ b/gui/src/shared/logging.ts
@@ -32,7 +32,16 @@ export class Logger {
private outputMessage(level: LogLevel, message: string) {
this.outputs
.filter((output) => level <= output.level)
- .forEach((output) => output.write(level, message));
+ .forEach(async (output) => {
+ const maybePromise = output.write(level, message);
+ if (maybePromise instanceof Promise) {
+ try {
+ await maybePromise;
+ } catch (e) {
+ console.error(`${output.constructor.name}.write: ${e.message}`);
+ }
+ }
+ });
}
}