diff --git a/internal/site/usecase/site_ucase.go b/internal/site/usecase/site_ucase.go index bf98b87..f42164c 100644 --- a/internal/site/usecase/site_ucase.go +++ b/internal/site/usecase/site_ucase.go @@ -9,10 +9,17 @@ import ( "source.toby3d.me/toby3d/home/internal/site" ) -type siteUseCase struct { - sites site.Repository - resources resource.Repository -} +type ( + siteUseCase struct { + sites site.Repository + resources resource.Repository + } + + stubSiteUseCase struct { + err error + site *domain.Site + } +) func NewSiteUseCase(sites site.Repository, resources resource.Repository) site.UseCase { return &siteUseCase{ @@ -50,3 +57,14 @@ func (ucase *siteUseCase) Do(ctx context.Context, lang domain.Language) (*domain return out, nil } + +func NewStubSiteUseCase(site *domain.Site, err error) site.UseCase { + return &stubSiteUseCase{ + site: site, + err: err, + } +} + +func (ucase *stubSiteUseCase) Do(_ context.Context, _ domain.Language) (*domain.Site, error) { + return ucase.site, ucase.err +}