TraceSourceTests.ts
68 lines
| 1.6 KiB
| video/mp2t
|
TypeScriptLexer
|
|
r22 | import { TraceSource, DebugLevel } from '@implab/core/log/TraceSource' | |
|
|
r11 | import * as tape from 'tape'; | |
|
|
r15 | import { TapeWriter } from './TestTraits'; | |
|
|
r11 | ||
| const sourceId = 'test/TraceSourceTests'; | |||
|
|
r13 | tape('trace message', t => { | |
|
|
r11 | let trace = TraceSource.get(sourceId); | |
|
|
r22 | trace.level = DebugLevel; | |
|
|
r11 | ||
|
|
r22 | let h = trace.events.on((ev) => { | |
|
|
r14 | t.equal(ev.source, trace, "sender should be the current trace source"); | |
|
|
r22 | t.equal(ev.level, DebugLevel, "level should be debug level"); | |
|
|
r14 | t.equal(ev.arg, "Hello, World!", "The message should be a formatted message"); | |
|
|
r12 | ||
| t.end(); | |||
|
|
r11 | }); | |
|
|
r12 | trace.debug("Hello, {0}!", "World"); | |
|
|
r11 | h.destroy(); | |
|
|
r13 | }); | |
| tape('trace event', t => { | |||
| let trace = TraceSource.get(sourceId); | |||
|
|
r22 | trace.level = DebugLevel; | |
|
|
r13 | ||
| let event = { | |||
| name: "custom event" | |||
| }; | |||
|
|
r22 | let h = trace.events.on((ev) => { | |
|
|
r14 | t.equal(ev.source, trace, "sender should be the current trace source"); | |
|
|
r22 | t.equal(ev.level, DebugLevel, "level should be debug level"); | |
|
|
r14 | t.equal(ev.arg, event, "The message should be the specified object"); | |
|
|
r13 | ||
| t.end(); | |||
| }); | |||
|
|
r22 | trace.traceEvent(DebugLevel, event); | |
|
|
r13 | ||
| h.destroy(); | |||
|
|
r14 | }); | |
|
|
r15 | tape('tape comment writer', async t => { | |
| let writer = new TapeWriter(t); | |||
| TraceSource.on(ts => { | |||
|
|
r22 | writer.writeEvents(ts.events); | |
|
|
r15 | }); | |
|
|
r14 | ||
| let trace = TraceSource.get(sourceId); | |||
|
|
r22 | trace.level = DebugLevel; | |
|
|
r14 | ||
| trace.log("Hello, {0}!", 'World'); | |||
|
|
r15 | trace.log("Multi\n line"); | |
|
|
r14 | trace.warn("Look at me!"); | |
| trace.error("DIE!"); | |||
|
|
r15 | writer.destroy(); | |
|
|
r16 | ||
|
|
r15 | trace.log("You shouldn't see it!"); | |
| t.comment("DONE"); | |||
|
|
r14 | ||
| t.end(); | |||
|
|
r11 | }); |
