]> git.giacomolli.uk - onechat/blobdiff - schedule_test.go
Show an input prompt while the agent is idle
[onechat] / schedule_test.go
index ff7c905fca4b6590cc94c7c36b57e57a49fdef47..3048d7584d4e8e793d6b178ab4aa476ba05b1172 100644 (file)
@@ -2,7 +2,6 @@ package main
 
 import (
        "context"
 
 import (
        "context"
-       "log"
        "os"
        "path/filepath"
        "strings"
        "os"
        "path/filepath"
        "strings"
@@ -172,6 +171,7 @@ func TestSchedulesDone(t *testing.T) {
        now := start.Add(3*time.Hour + 30*time.Minute)
        due := schedules.Due(now)
        require.Len(t, due, 2)
        now := start.Add(3*time.Hour + 30*time.Minute)
        due := schedules.Due(now)
        require.Len(t, due, 2)
+
        for _, schedule := range due {
                require.NoError(t, schedules.Done(schedule, now))
        }
        for _, schedule := range due {
                require.NoError(t, schedules.Done(schedule, now))
        }
@@ -241,7 +241,7 @@ func TestSchedulesRunStartsATurnWhenDue(t *testing.T) {
        }
 
        logs := &SyncBuffer{}
        }
 
        logs := &SyncBuffer{}
-       schedules, err := openSchedules(filepath.Join(t.TempDir(), scheduleFileName), clock.Now, log.New(logs, "", 0))
+       schedules, err := openSchedules(filepath.Join(t.TempDir(), scheduleFileName), clock.Now, daemonTestLogger(logs))
        require.NoError(t, err)
 
        server := newModelFake(t)
        require.NoError(t, err)
 
        server := newModelFake(t)
@@ -258,7 +258,7 @@ func TestSchedulesRunStartsATurnWhenDue(t *testing.T) {
        require.Equal(t, "[Schedule 1] Sunday 2026-11-08 20:05 -03:00, once\nRemind the user to drink water.\n"+scheduleEmptyReply, texts[len(texts)-1])
        require.Equal(t, scheduleSource, test.events.LastEvent("work").Source)
        require.Equal(t, "No schedules.", schedules.List())
        require.Equal(t, "[Schedule 1] Sunday 2026-11-08 20:05 -03:00, once\nRemind the user to drink water.\n"+scheduleEmptyReply, texts[len(texts)-1])
        require.Equal(t, scheduleSource, test.events.LastEvent("work").Source)
        require.Equal(t, "No schedules.", schedules.List())
-       require.Equal(t, "schedule 1 ran\n", logs.String())
+       require.Equal(t, "<6>schedule ran id=1\n", logs.String())
 }
 
 func TestSchedulesRunMissedSchedulesOnceAtTheStart(t *testing.T) {
 }
 
 func TestSchedulesRunMissedSchedulesOnceAtTheStart(t *testing.T) {
@@ -270,7 +270,7 @@ func TestSchedulesRunMissedSchedulesOnceAtTheStart(t *testing.T) {
        }
 
        logs := &SyncBuffer{}
        }
 
        logs := &SyncBuffer{}
-       schedules, err := openSchedules(path, clock.Now, log.New(logs, "", 0))
+       schedules, err := openSchedules(path, clock.Now, daemonTestLogger(logs))
        require.NoError(t, err)
 
        server := newModelFake(t)
        require.NoError(t, err)
 
        server := newModelFake(t)
@@ -284,7 +284,7 @@ func TestSchedulesRunMissedSchedulesOnceAtTheStart(t *testing.T) {
                "[Schedule 2] Sunday 2026-11-08 10:00 -03:00, repeats 0 * * * *\nTell the user the time.\n" + scheduleLateLine + "\n" + scheduleEmptyReply,
        }, texts[len(texts)-2:])
        require.Equal(t, "2 | Sunday 2026-11-08 21:00 -03:00 | 0 * * * * | Tell the user the time.", schedules.List())
                "[Schedule 2] Sunday 2026-11-08 10:00 -03:00, repeats 0 * * * *\nTell the user the time.\n" + scheduleLateLine + "\n" + scheduleEmptyReply,
        }, texts[len(texts)-2:])
        require.Equal(t, "2 | Sunday 2026-11-08 21:00 -03:00 | 0 * * * * | Tell the user the time.", schedules.List())
-       require.Equal(t, "schedule 1 ran 11h30m0s late\nschedule 2 ran 10h30m0s late\n", logs.String())
+       require.Equal(t, "<6>schedule ran id=1 late=11h30m0s\n<6>schedule ran id=2 late=10h30m0s\n", logs.String())
 }
 
 func TestDaemonRunsADueSchedule(t *testing.T) {
 }
 
 func TestDaemonRunsADueSchedule(t *testing.T) {