Files

31 lines
790 B
Go

// Copyright (c) 2026 Storm Dragon
// Authors: Storm Dragon, Angus Kola
// SPDX-License-Identifier: GPL-3.0-or-later
package app
import (
"testing"
"git.stormux.org/storm/cthulhu/internal/version"
)
func TestPresentVersion(t *testing.T) {
speech := &fakeSpeechQueue{
spoken: make(chan string, 1),
requests: make(chan speechRequest, 1),
interrupt: make(chan struct{}, 1),
}
presentVersion(speech, "2.58.0", "x11", "GNOME")
select {
case <-speech.interrupt:
default:
t.Fatal("version presentation did not interrupt speech")
}
request := <-speech.requests
want := version.Details("2.58.0", "x11", "GNOME")
if request.Text != want || request.Role != "system" || request.Cause != "version" {
t.Fatalf("request = %+v, want %q as system version", request, want)
}
}