diff --git a/tests/ClaudeDo.Ui.Tests/ViewModels/DetailsIslandPlanningTests.cs b/tests/ClaudeDo.Ui.Tests/ViewModels/DetailsIslandPlanningTests.cs index ac689a3..ab68b3f 100644 --- a/tests/ClaudeDo.Ui.Tests/ViewModels/DetailsIslandPlanningTests.cs +++ b/tests/ClaudeDo.Ui.Tests/ViewModels/DetailsIslandPlanningTests.cs @@ -53,10 +53,20 @@ public class DetailsIslandPlanningTests : IDisposable public object? GetService(Type serviceType) => null; } + private sealed class StubNotesApi : ClaudeDo.Ui.Services.Interfaces.INotesApi + { + public Task> ListAsync(DateOnly day) => + Task.FromResult(new List()); + public Task AddAsync(DateOnly day, string text) => + Task.FromResult(null); + public Task UpdateAsync(string id, string text) => Task.CompletedTask; + public Task DeleteAsync(string id) => Task.CompletedTask; + } + private DetailsIslandViewModel BuildVm(FakeWorkerClient worker) { var factory = new TestDbFactory(NewContext); - return new DetailsIslandViewModel(factory, worker, new NullServiceProvider()); + return new DetailsIslandViewModel(factory, worker, new NullServiceProvider(), new StubNotesApi()); } private static SubtaskRowViewModel MakeSubtask(TaskStatus status, WorktreeState wt = WorktreeState.Active) => diff --git a/tests/ClaudeDo.Worker.Tests/Hub/PlanningHubTests.cs b/tests/ClaudeDo.Worker.Tests/Hub/PlanningHubTests.cs index 37de60a..2beab44 100644 --- a/tests/ClaudeDo.Worker.Tests/Hub/PlanningHubTests.cs +++ b/tests/ClaudeDo.Worker.Tests/Hub/PlanningHubTests.cs @@ -55,7 +55,7 @@ public sealed class PlanningHubTests : IDisposable { var hub = new WorkerHub( null!, null!, null!, null!, null!, null!, null!, null!, null!, - _planning, _launcher, null!, null!, null!, null!, null!); + _planning, _launcher, null!, null!, null!, null!, null!, null!); hub.Clients = new FakeHubCallerClients(_proxy); hub.Context = new FakeHubCallerContext(); return hub; diff --git a/tests/ClaudeDo.Worker.Tests/Hub/WorktreeStateHubTests.cs b/tests/ClaudeDo.Worker.Tests/Hub/WorktreeStateHubTests.cs index 780018e..8f047b9 100644 --- a/tests/ClaudeDo.Worker.Tests/Hub/WorktreeStateHubTests.cs +++ b/tests/ClaudeDo.Worker.Tests/Hub/WorktreeStateHubTests.cs @@ -19,7 +19,7 @@ public sealed class WorktreeStateHubTests : IDisposable var broadcaster = new HubBroadcaster(new CapturingHubContext()); var hub = new WorkerHub( null!, null!, null!, null!, broadcaster, _db.CreateFactory(), - null!, null!, null!, null!, null!, null!, null!, null!, null!, null!); + null!, null!, null!, null!, null!, null!, null!, null!, null!, null!, null!); hub.Clients = new FakeHubCallerClients(new RecordingClientProxy()); hub.Context = new FakeHubCallerContext(); return hub; diff --git a/tests/ClaudeDo.Worker.Tests/UiVm/TasksIslandViewModelPlanningTests.cs b/tests/ClaudeDo.Worker.Tests/UiVm/TasksIslandViewModelPlanningTests.cs index c74df15..311057c 100644 --- a/tests/ClaudeDo.Worker.Tests/UiVm/TasksIslandViewModelPlanningTests.cs +++ b/tests/ClaudeDo.Worker.Tests/UiVm/TasksIslandViewModelPlanningTests.cs @@ -72,6 +72,14 @@ sealed class FakeWorkerClient : IWorkerClient public Task MergeAllPlanningAsync(string planningTaskId, string targetBranch) => Task.CompletedTask; public Task ContinuePlanningMergeAsync(string planningTaskId) => Task.CompletedTask; public Task AbortPlanningMergeAsync(string planningTaskId) => Task.CompletedTask; + + public Task GetAppSettingsAsync() => Task.FromResult(null); + public Task GetWeekReportAsync(DateOnly start, DateOnly end) => Task.FromResult(null); + public Task GenerateWeekReportAsync(DateOnly start, DateOnly end) => Task.FromResult(""); + public Task> GetDailyNotesAsync(DateOnly day) => Task.FromResult(new List()); + public Task AddDailyNoteAsync(DateOnly day, string text) => Task.FromResult(null); + public Task UpdateDailyNoteAsync(string id, string text) => Task.CompletedTask; + public Task DeleteDailyNoteAsync(string id) => Task.CompletedTask; } // ── Helper to build VM with pre-seeded Items ──────────────────────────────────