using TarninaHub.Application.Abstractions;
using TarninaHub.Application.Dtos;
namespace TarninaHub.Tests.Stubs;
/// Configurable IInnovationService stub for controller tests.
public sealed class StubInnovationService : IInnovationService
{
public Task> ListAsync(
string? challengeId,
string? stage,
string? query,
bool onlyPublished,
CancellationToken cancellationToken) => Task.FromResult>([]);
public Task GetAsync(string innovationId, CancellationToken cancellationToken) =>
Task.FromResult(null);
public Task CreateAsync(
InnovationRequest request,
CancellationToken cancellationToken) => Task.FromResult(new InnovationResponse(
"innovation:new",
request.Title,
request.Summary ?? string.Empty,
request.Description ?? string.Empty,
request.ChallengeId,
request.Stage,
request.Cost,
request.Contact,
request.Media ?? [],
request.Published,
DateTimeOffset.UtcNow));
public Task UpdateAsync(
string innovationId,
InnovationRequest request,
CancellationToken cancellationToken) => Task.FromResult(null);
}