test(ui): teach the worker-client fakes about TokenTracker status
This commit is contained in:
@@ -183,6 +183,17 @@ public abstract class StubWorkerClient : IWorkerClient
|
|||||||
=> Task.FromResult<IReadOnlyList<ModelUsageRowDto>>(Array.Empty<ModelUsageRowDto>());
|
=> Task.FromResult<IReadOnlyList<ModelUsageRowDto>>(Array.Empty<ModelUsageRowDto>());
|
||||||
public virtual Task<IReadOnlyList<TaskUsageRowDto>> GetTaskUsageAsync(DateOnly from, DateOnly to)
|
public virtual Task<IReadOnlyList<TaskUsageRowDto>> GetTaskUsageAsync(DateOnly from, DateOnly to)
|
||||||
=> Task.FromResult<IReadOnlyList<TaskUsageRowDto>>(Array.Empty<TaskUsageRowDto>());
|
=> Task.FromResult<IReadOnlyList<TaskUsageRowDto>>(Array.Empty<TaskUsageRowDto>());
|
||||||
|
|
||||||
|
// "Not installed, but Node is fine" — the state that exercises the hint card and the
|
||||||
|
// install button without ever touching a real CLI.
|
||||||
|
public virtual Task<TokenTrackerStatusDto?> GetTokenTrackerStatusAsync() =>
|
||||||
|
Task.FromResult<TokenTrackerStatusDto?>(new TokenTrackerStatusDto(
|
||||||
|
Installed: false, Version: null, NodeOk: true, NodeVersion: "v22.0.0",
|
||||||
|
LastFetchedUtc: null, LastError: null, FormatVersion: null, SessionCount: 0));
|
||||||
|
|
||||||
|
public virtual Task<TokenTrackerStatusDto?> RefreshTokenTrackerAsync() => GetTokenTrackerStatusAsync();
|
||||||
|
|
||||||
|
public virtual Task<TokenTrackerStatusDto?> InstallTokenTrackerAsync() => GetTokenTrackerStatusAsync();
|
||||||
public void RaiseUsageUpdated(UsageSnapshotDto snapshot) => UsageUpdatedEvent?.Invoke(snapshot);
|
public void RaiseUsageUpdated(UsageSnapshotDto snapshot) => UsageUpdatedEvent?.Invoke(snapshot);
|
||||||
|
|
||||||
protected void RaisePropertyChanged(string name) => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name));
|
protected void RaisePropertyChanged(string name) => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name));
|
||||||
|
|||||||
@@ -171,6 +171,15 @@ sealed class FakeWorkerClient : IWorkerClient
|
|||||||
=> Task.FromResult<IReadOnlyList<ModelUsageRowDto>>(System.Array.Empty<ModelUsageRowDto>());
|
=> Task.FromResult<IReadOnlyList<ModelUsageRowDto>>(System.Array.Empty<ModelUsageRowDto>());
|
||||||
public Task<IReadOnlyList<TaskUsageRowDto>> GetTaskUsageAsync(DateOnly from, DateOnly to)
|
public Task<IReadOnlyList<TaskUsageRowDto>> GetTaskUsageAsync(DateOnly from, DateOnly to)
|
||||||
=> Task.FromResult<IReadOnlyList<TaskUsageRowDto>>(System.Array.Empty<TaskUsageRowDto>());
|
=> Task.FromResult<IReadOnlyList<TaskUsageRowDto>>(System.Array.Empty<TaskUsageRowDto>());
|
||||||
|
|
||||||
|
public Task<TokenTrackerStatusDto?> GetTokenTrackerStatusAsync() =>
|
||||||
|
Task.FromResult<TokenTrackerStatusDto?>(new TokenTrackerStatusDto(
|
||||||
|
Installed: false, Version: null, NodeOk: true, NodeVersion: "v22.0.0",
|
||||||
|
LastFetchedUtc: null, LastError: null, FormatVersion: null, SessionCount: 0));
|
||||||
|
|
||||||
|
public Task<TokenTrackerStatusDto?> RefreshTokenTrackerAsync() => GetTokenTrackerStatusAsync();
|
||||||
|
|
||||||
|
public Task<TokenTrackerStatusDto?> InstallTokenTrackerAsync() => GetTokenTrackerStatusAsync();
|
||||||
}
|
}
|
||||||
|
|
||||||
// ── Helper to build VM with pre-seeded Items ──────────────────────────────────
|
// ── Helper to build VM with pre-seeded Items ──────────────────────────────────
|
||||||
|
|||||||
Reference in New Issue
Block a user