🧑💻 Created dummy and stub repository and use case for token
This commit is contained in:
parent
9048d0f77c
commit
ff40be5057
|
@ -6,12 +6,48 @@ import (
|
||||||
"source.toby3d.me/toby3d/auth/internal/domain"
|
"source.toby3d.me/toby3d/auth/internal/domain"
|
||||||
)
|
)
|
||||||
|
|
||||||
type Repository interface {
|
type (
|
||||||
Create(ctx context.Context, accessToken domain.Token) error
|
Repository interface {
|
||||||
Get(ctx context.Context, accessToken string) (*domain.Token, error)
|
Create(ctx context.Context, accessToken domain.Token) error
|
||||||
}
|
Get(ctx context.Context, accessToken string) (*domain.Token, error)
|
||||||
|
}
|
||||||
|
|
||||||
|
dummyTokenRepository struct{}
|
||||||
|
|
||||||
|
stubTokenRepository struct {
|
||||||
|
token *domain.Token
|
||||||
|
error error
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
ErrExist error = domain.NewError(domain.ErrorCodeServerError, "token already exist", "")
|
ErrExist error = domain.NewError(domain.ErrorCodeServerError, "token already exist", "")
|
||||||
ErrNotExist error = domain.NewError(domain.ErrorCodeServerError, "token not exist", "")
|
ErrNotExist error = domain.NewError(domain.ErrorCodeServerError, "token not exist", "")
|
||||||
)
|
)
|
||||||
|
|
||||||
|
func NewDummyTokenRepository() Repository {
|
||||||
|
return dummyTokenRepository{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (dummyTokenRepository) Create(_ context.Context, _ domain.Token) error {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (dummyTokenRepository) Get(_ context.Context, _ string) (*domain.Token, error) {
|
||||||
|
return nil, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewStubTokenRepository(token *domain.Token, err error) Repository {
|
||||||
|
return &stubTokenRepository{
|
||||||
|
token: token,
|
||||||
|
error: err,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (repo *stubTokenRepository) Create(_ context.Context, _ domain.Token) error {
|
||||||
|
return repo.error
|
||||||
|
}
|
||||||
|
|
||||||
|
func (repo *stubTokenRepository) Get(_ context.Context, _ string) (*domain.Token, error) {
|
||||||
|
return repo.token, repo.error
|
||||||
|
}
|
||||||
|
|
|
@ -24,6 +24,14 @@ type (
|
||||||
// Revoke revokes the AccessToken and blocks its further use.
|
// Revoke revokes the AccessToken and blocks its further use.
|
||||||
Revoke(ctx context.Context, accessToken string) error
|
Revoke(ctx context.Context, accessToken string) error
|
||||||
}
|
}
|
||||||
|
|
||||||
|
dummyTokenUseCase struct{}
|
||||||
|
|
||||||
|
stubTokenUseCase struct {
|
||||||
|
token *domain.Token
|
||||||
|
profile *domain.Profile
|
||||||
|
error error
|
||||||
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
@ -54,3 +62,39 @@ var (
|
||||||
"https://indieauth.net/source/#request",
|
"https://indieauth.net/source/#request",
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
func NewDummyTokenUseCase() UseCase {
|
||||||
|
return dummyTokenUseCase{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (dummyTokenUseCase) Exchange(_ context.Context, _ ExchangeOptions) (*domain.Token, *domain.Profile, error) {
|
||||||
|
return nil, nil, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (dummyTokenUseCase) Revoke(_ context.Context, _ string) error {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (dummyTokenUseCase) Verify(_ context.Context, _ string) (*domain.Token, *domain.Profile, error) {
|
||||||
|
return nil, nil, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewStubTokenUseCase(token *domain.Token, profile *domain.Profile, err error) UseCase {
|
||||||
|
return &stubTokenUseCase{
|
||||||
|
token: token,
|
||||||
|
profile: profile,
|
||||||
|
error: err,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (ucase *stubTokenUseCase) Exchange(_ context.Context, _ ExchangeOptions) (*domain.Token, *domain.Profile, error) {
|
||||||
|
return ucase.token, ucase.profile, ucase.error
|
||||||
|
}
|
||||||
|
|
||||||
|
func (ucase *stubTokenUseCase) Revoke(_ context.Context, _ string) error {
|
||||||
|
return ucase.error
|
||||||
|
}
|
||||||
|
|
||||||
|
func (ucase *stubTokenUseCase) Verify(_ context.Context, _ string) (*domain.Token, *domain.Profile, error) {
|
||||||
|
return ucase.token, ucase.profile, ucase.error
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue