From 0422e505333513beef8172cc79f2ec208293fc14 Mon Sep 17 00:00:00 2001 From: Sam Anthony Date: Sat, 24 Aug 2024 17:13:44 -0400 Subject: move functionality of makeEventsChan() to external library --- gui_test.go | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'gui_test.go') diff --git a/gui_test.go b/gui_test.go index 0d18c92..c8e685e 100644 --- a/gui_test.go +++ b/gui_test.go @@ -4,6 +4,8 @@ import ( "image" "image/draw" "time" + + "git.samanthony.xyz/share" ) const timeout = 1 * time.Second @@ -31,8 +33,7 @@ func tryRecv[T any](c <-chan T, timeout time.Duration) (*T, bool) { } type dummyEnv struct { - eventsIn chan<- Event - eventsOut <-chan Event + events share.Queue[Event] drawIn chan<- func(draw.Image) image.Rectangle drawOut <-chan func(draw.Image) image.Rectangle @@ -44,7 +45,7 @@ type dummyEnv struct { } func newDummyEnv(size image.Rectangle) dummyEnv { - eventsOut, eventsIn := makeEventsChan() + events := share.NewQueue[Event]() drawIn := make(chan func(draw.Image) image.Rectangle) drawOut := make(chan func(draw.Image) image.Rectangle) kill := make(chan bool) @@ -60,7 +61,7 @@ func newDummyEnv(size image.Rectangle) dummyEnv { defer close(kill) defer close(drawOut) defer close(drawIn) - defer close(eventsIn) + defer close(events.Enqueue) defer func() { go drain(drawIn) attached.kill <- true @@ -77,13 +78,13 @@ func newDummyEnv(size image.Rectangle) dummyEnv { } }() - eventsIn <- Resize{size} + events.Enqueue <- Resize{size} - return dummyEnv{eventsIn, eventsOut, drawIn, drawOut, kill, dead, attached.attach()} + return dummyEnv{events, drawIn, drawOut, kill, dead, attached.attach()} } func (de dummyEnv) Events() <-chan Event { - return de.eventsOut + return de.events.Dequeue } func (de dummyEnv) Draw() chan<- func(draw.Image) image.Rectangle { -- cgit v1.2.3