fix(Basic LLM Chain Node): Use correct mimetype for binary data (#12978)

This commit is contained in:
jeanpaul
2025-02-07 09:49:11 +01:00
committed by GitHub
parent 9e4e1ca1f4
commit 2b1eb049f2
3 changed files with 56 additions and 13 deletions

View File

@@ -0,0 +1,23 @@
import { mock } from 'jest-mock-extended';
import type { IBinaryData } from 'n8n-workflow';
import { dataUriFromImageData, UnsupportedMimeTypeError } from '../utils';
describe('dataUriFromImageData', () => {
it('should not throw an error on images', async () => {
const mockBuffer = Buffer.from('Test data');
const mockBinaryData = mock<IBinaryData>({ mimeType: 'image/jpeg' });
const dataUri = dataUriFromImageData(mockBinaryData, mockBuffer);
expect(dataUri).toBe('data:image/jpeg;base64,VGVzdCBkYXRh');
});
it('should throw an UnsupportetMimeTypeError on non-images', async () => {
const mockBuffer = Buffer.from('Test data');
const mockBinaryData = mock<IBinaryData>({ mimeType: 'text/plain' });
expect(() => {
dataUriFromImageData(mockBinaryData, mockBuffer);
}).toThrow(UnsupportedMimeTypeError);
});
});