@hexadrop/error
Version:
Hexagonal architecture utils library
60 lines (49 loc) • 1.3 kB
text/typescript
import DomainError from './domain-error';
class EmptyErrorCodeError extends DomainError {
constructor() {
super('EmptyErrorCodeError', 'empty error message', '');
}
}
class UndefinedErrorCodeError extends DomainError {
constructor() {
// @ts-expect-error Test undefined error code
super('UndefinedErrorCodeError', 'undefined error message');
}
}
class InvalidErrorCodeError extends DomainError {
constructor() {
super('UndefinedErrorCodeError', 'undefined error message', 'asfkj');
}
}
class EmptyNameError extends DomainError {
constructor() {
super('', 'undefined error message', 'HEX(400)');
}
}
class UndefinedNameError extends DomainError {
constructor() {
super(
// @ts-expect-error Expect not undefined
undefined,
'undefined error message',
'HEX(400)'
);
}
}
export default class InvalidDomainErrorMother {
static emptyErrorCode(): EmptyErrorCodeError {
return new EmptyErrorCodeError();
}
static emptyName(): EmptyErrorCodeError {
return new EmptyNameError();
}
static invalidErrorCode(): EmptyErrorCodeError {
return new InvalidErrorCodeError();
}
static undefinedErrorCode(): EmptyErrorCodeError {
return new UndefinedErrorCodeError();
}
static undefinedName(): EmptyErrorCodeError {
return new UndefinedNameError();
}
}