MCPcopy Index your code
hub / github.com/wavetermdev/waveterm / TestGenerateWaveEventTypes

Function TestGenerateWaveEventTypes

pkg/tsgen/tsgenevent_test.go:15–37  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

13)
14
15func TestGenerateWaveEventTypes(t *testing.T) {
16 tsTypesMap := make(map[reflect.Type]string)
17 waveEventTypeDecl := GenerateWaveEventTypes(tsTypesMap)
18
19 if !strings.Contains(waveEventTypeDecl, `type WaveEventName = "blockclose"`) {
20 t.Fatalf("expected WaveEventName declaration, got:\n%s", waveEventTypeDecl)
21 }
22 if !strings.Contains(waveEventTypeDecl, `{ event: "block:jobstatus"; data?: BlockJobStatusData; }`) {
23 t.Fatalf("expected typed block:jobstatus event, got:\n%s", waveEventTypeDecl)
24 }
25 if !strings.Contains(waveEventTypeDecl, `{ event: "route:up"; data?: null; }`) {
26 t.Fatalf("expected null for known no-data event, got:\n%s", waveEventTypeDecl)
27 }
28 if got := getWaveEventDataTSType("unmapped:event", tsTypesMap); got != "any" {
29 t.Fatalf("expected any for unmapped event fallback, got: %q", got)
30 }
31 if _, found := tsTypesMap[reflect.TypeOf(wps.WaveEvent{})]; !found {
32 t.Fatalf("expected WaveEvent type to be seeded in tsTypesMap")
33 }
34 if _, found := tsTypesMap[reflect.TypeOf(wshrpc.BlockJobStatusData{})]; !found {
35 t.Fatalf("expected mapped data types to be generated into tsTypesMap")
36 }
37}

Callers

nothing calls this directly

Calls 2

GenerateWaveEventTypesFunction · 0.85
getWaveEventDataTSTypeFunction · 0.85

Tested by

no test coverage detected