UNPKG

component-dbs-core

Version:

DTO objects shared among device backend

84 lines (80 loc) 2.31 kB
import { v4 } from 'uuid'; import { TransactionDto } from '.'; import { TransactionType, TransactionStatus, TaxAmount, CardScheme, } from './types.d'; describe('Transaction DTO test suite', () => { it('should be able to create transaction dto object', () => { const id = v4(); const deviceUuid = v4(); const entityUuid = v4(); const siteUuid = v4(); const timestamp = v4(); const transactionType = TransactionType.PURCHASE; const status = TransactionStatus.APPROVED; const maskedPan = v4(); const reference = v4(); const amount = 1; const deviceName = v4(); const siteName = v4(); const saleAmount = 1; const tipAmount = 1; const feeAmount = 1; const taxAmounts: TaxAmount[] = []; const surchargeAmount = 1; const scheme = CardScheme.VISA; const depositUuid = v4(); const depositDate = new Date().toISOString(); const panToken = v4(); const par = v4(); const dto = new TransactionDto( id, deviceUuid, entityUuid, siteUuid, timestamp, transactionType, status, maskedPan, reference, amount, deviceName, siteName, saleAmount, tipAmount, feeAmount, taxAmounts, surchargeAmount, scheme, depositUuid, depositDate, panToken, par, ); expect(dto.id).toBe(id); expect(dto.deviceUuid).toBe(deviceUuid); expect(dto.entityUuid).toBe(entityUuid); expect(dto.siteUuid).toBe(siteUuid); expect(dto.timestamp).toBe(timestamp); expect(dto.transactionType).toBe(transactionType); expect(dto.status).toBe(status); expect(dto.maskedPan).toBe(maskedPan); expect(dto.reference).toBe(reference); expect(dto.amount).toBe(amount); expect(dto.deviceName).toBe(deviceName); expect(dto.siteName).toBe(siteName); expect(dto.saleAmount).toBe(saleAmount); expect(dto.tipAmount).toBe(tipAmount); expect(dto.feeAmount).toBe(feeAmount); expect(dto.taxAmounts).toBe(taxAmounts); expect(dto.surchargeAmount).toBe(surchargeAmount); expect(dto.scheme).toBe(scheme); expect(dto.depositUuid).toBe(depositUuid); expect(dto.depositDate).toBe(depositDate); expect(dto.panToken).toBe(panToken); expect(dto.par).toBe(par); }); });