mirror of
https://github.com/duhanbalci/iyzico.git
synced 2026-03-03 20:29:18 +00:00
77 lines
2.6 KiB
TypeScript
77 lines
2.6 KiB
TypeScript
/**
|
|
* Error classes unit tests
|
|
*/
|
|
|
|
import { describe, it, expect } from 'vitest';
|
|
import {
|
|
IyzicoError,
|
|
IyzicoRequestError,
|
|
IyzicoResponseError,
|
|
} from '../../src/errors';
|
|
import type { ErrorResponse } from '../../src/types';
|
|
|
|
describe('IyzicoError', () => {
|
|
it('should create error with message', () => {
|
|
const error = new IyzicoError('Test error');
|
|
expect(error.message).toBe('Test error');
|
|
expect(error.name).toBe('IyzicoError');
|
|
expect(error.code).toBeUndefined();
|
|
expect(error.originalError).toBeUndefined();
|
|
});
|
|
|
|
it('should create error with code and originalError', () => {
|
|
const originalError = new Error('Original error');
|
|
const error = new IyzicoError('Test error', 'TEST_CODE', originalError);
|
|
expect(error.message).toBe('Test error');
|
|
expect(error.code).toBe('TEST_CODE');
|
|
expect(error.originalError).toBe(originalError);
|
|
});
|
|
});
|
|
|
|
describe('IyzicoRequestError', () => {
|
|
it('should create request error', () => {
|
|
const error = new IyzicoRequestError('Request failed');
|
|
expect(error.message).toBe('Request failed');
|
|
expect(error.name).toBe('IyzicoRequestError');
|
|
expect(error.code).toBe('REQUEST_ERROR');
|
|
});
|
|
|
|
it('should create request error with originalError', () => {
|
|
const originalError = new Error('Validation error');
|
|
const error = new IyzicoRequestError('Request failed', originalError);
|
|
expect(error.message).toBe('Request failed');
|
|
expect(error.code).toBe('REQUEST_ERROR');
|
|
expect(error.originalError).toBe(originalError);
|
|
});
|
|
});
|
|
|
|
describe('IyzicoResponseError', () => {
|
|
it('should create response error', () => {
|
|
const errorResponse: ErrorResponse = {
|
|
status: 'failure',
|
|
errorCode: 'PAYMENT_FAILED',
|
|
errorMessage: 'Payment failed',
|
|
};
|
|
const error = new IyzicoResponseError('Payment failed', errorResponse);
|
|
expect(error.message).toBe('Payment failed');
|
|
expect(error.name).toBe('IyzicoResponseError');
|
|
expect(error.code).toBe('PAYMENT_FAILED');
|
|
expect(error.errorResponse).toEqual(errorResponse);
|
|
});
|
|
|
|
it('should create response error with originalError', () => {
|
|
const errorResponse: ErrorResponse = {
|
|
status: 'failure',
|
|
errorCode: 'PAYMENT_FAILED',
|
|
errorMessage: 'Payment failed',
|
|
};
|
|
const originalError = new Error('Network error');
|
|
const error = new IyzicoResponseError('Payment failed', errorResponse, originalError);
|
|
expect(error.message).toBe('Payment failed');
|
|
expect(error.code).toBe('PAYMENT_FAILED');
|
|
expect(error.errorResponse).toEqual(errorResponse);
|
|
expect(error.originalError).toBe(originalError);
|
|
});
|
|
});
|
|
|