import { isImage } from './asset-api-helpers'; import { Asset } from '../types/api'; import { describe, expect, it } from 'vitest'; describe('Asset API helpers', () => { it('should check if an asset is an image', () => { const asset: Asset = { $type: 'Q.Cms.Core.Domain.CmsAsset, Q.Cms.Core.Domain', alt: null, altTranslations: [], blobstoreUrl: 'https://nederlandseloterij.blob.core.windows.net/assets/5F37C8B6-6FD0-4919-AD9A-06CA214398F3', contentType: 'image/jpeg', created: '2019-10-24T13:46:26.421624+02:00', createdOn: '2019-10-24T11:46:26.421629+00:00', height: 204, id: '5f37c8b6-6fd0-4919-ad9a-06ca214398f3', imageUrl: '/image/5F37C8B6-6FD0-4919-AD9A-06CA214398F3', isDeleted: false, modified: '2019-10-24T13:46:26.421624+02:00', previewData: 'BCAASACADEkH/2gAMAwEAAhEDEQA/AL+11M7dQcE4yomWUojwScq71tNJLKTxSx27IfPFPcpWOpQgl1quZWl2ijms52n5FOVFjNLOAXH2p5tuTOPhpTFbQSwTBxb9qD5wiLmnV+SrNjtXAdBAA6CEKkuiE3Zrxb0PxZa0Z9BCEIZ+H//Z', size: 13739, sourceId: '5F37C8B6-6FD0-4919-AD9A-06CA214398F3', title: 'hhllo', width: 360, variants: [], tagIds: [] }; expect(isImage(asset)).toEqual(true); expect(isImage(null)).toEqual(false); const contentType2 = { contentType: 'application/pdf' }; const asset2 = { ...asset, ...contentType2 }; expect(isImage(asset2)).toEqual(false); const contentType3 = { contentType: 'image/png' }; const asset3 = { ...asset, ...contentType3 }; expect(isImage(asset3)).toEqual(true); }); });