X-Git-Url: https://git.giacomolli.uk/onechat/blobdiff_plain/6e3e9c5c10f3d35bae7e9846334974a09418aef7..0018014ab36f3de61a4b8a5515009dab803d6c38:/daemon_start_helper_test.go diff --git a/daemon_start_helper_test.go b/daemon_start_helper_test.go index 1952e77..b2c3787 100644 --- a/daemon_start_helper_test.go +++ b/daemon_start_helper_test.go @@ -8,10 +8,22 @@ import ( "github.com/stretchr/testify/require" ) -// daemonStartTestWithBot is daemonStartTest with bot, which can be nil. +// daemonStartTestWithBot is daemonStartTest with bot, which can be nil. WhatsApp +// is not linked. func daemonStartTestWithBot(t *testing.T, server *ModelFake, bot *TelegramBot) string { t.Helper() + whatsapp, _, _ := whatsappStartTest(t, t.TempDir(), newTestClock()) + socket, _ := daemonStartTestWithWhatsApp(t, server, bot, whatsapp) + + return socket +} + +// daemonStartTestWithWhatsApp is daemonStartTestWithBot with whatsapp. It also +// returns the memory of the agent. +func daemonStartTestWithWhatsApp(t *testing.T, server *ModelFake, bot *TelegramBot, whatsapp *WhatsApp) (string, *Memory) { + t.Helper() + dir := t.TempDir() agent, err := openAgent(filepath.Join(dir, daemonAgentDirName)) require.NoError(t, err) @@ -29,7 +41,7 @@ func daemonStartTestWithBot(t *testing.T, server *ModelFake, bot *TelegramBot) s ctx, cancel := context.WithCancel(t.Context()) done := make(chan error) go func() { - done <- daemonServe(ctx, listener, bot, func(notify func(Event)) (*TurnLoop, error) { + done <- daemonServe(ctx, listener, bot, whatsapp, func(notify func(Event)) (*TurnLoop, error) { return newTurnLoop(agent, memory, newTestSubagents(t), client, clock.Now, notify) }) }() @@ -40,5 +52,5 @@ func daemonStartTestWithBot(t *testing.T, server *ModelFake, bot *TelegramBot) s require.NoError(t, memory.Close()) }) - return socket + return socket, memory }