diff --git a/packages/dnb-eufemia/src/components/upload/__tests__/Upload.test.tsx b/packages/dnb-eufemia/src/components/upload/__tests__/Upload.test.tsx
index 2cb5e8050e8..38798a4c7c4 100644
--- a/packages/dnb-eufemia/src/components/upload/__tests__/Upload.test.tsx
+++ b/packages/dnb-eufemia/src/components/upload/__tests__/Upload.test.tsx
@@ -556,6 +556,52 @@ describe('Upload', () => {
).toEqual(expect.arrayContaining(['dnb-upload__file-cell--highlight']))
})
+ it('will return error when dropping a file with extension that is not accepted', async () => {
+ const id = 'not-supported-extension'
+
+ renderHook(useUpload, { initialProps: id })
+
+ render(
+
+ )
+
+ const getRootElement = () => document.querySelector('.dnb-upload')
+
+ const element = getRootElement()
+ const file1 = createMockFile('fileName-1.png', 100, 'image/png')
+
+ await waitFor(() =>
+ fireEvent.drop(element, {
+ dataTransfer: { files: [file1] },
+ })
+ )
+
+ expect(screen.queryByText(nb.errorUnsupportedFile)).toBeInTheDocument()
+ })
+
+ it('will return error when dropping a file without extension', async () => {
+ const id = 'no-extension'
+
+ renderHook(useUpload, { initialProps: id })
+
+ render(
+
+ )
+
+ const getRootElement = () => document.querySelector('.dnb-upload')
+
+ const element = getRootElement()
+ const file1 = createMockFile('fileName-1', 100, '')
+
+ await waitFor(() =>
+ fireEvent.drop(element, {
+ dataTransfer: { files: [file1] },
+ })
+ )
+
+ expect(screen.queryByText(nb.errorUnsupportedFile)).toBeInTheDocument()
+ })
+
describe('useUpload', () => {
it('calls uses the useUpload hook to store files', async () => {
const validationFunction = jest.fn()
diff --git a/packages/dnb-eufemia/src/components/upload/__tests__/UploadVerify.test.tsx b/packages/dnb-eufemia/src/components/upload/__tests__/UploadVerify.test.tsx
index 3da2b0d644e..3738c7d8296 100644
--- a/packages/dnb-eufemia/src/components/upload/__tests__/UploadVerify.test.tsx
+++ b/packages/dnb-eufemia/src/components/upload/__tests__/UploadVerify.test.tsx
@@ -146,6 +146,24 @@ describe('verifyFiles', () => {
})
})
+ it('returns error message when uploading a file without a file extension', () => {
+ const file1 = createMockFile('fileName1', 100, '')
+
+ const rawFiles = [{ file: file1 }]
+ const acceptedFileTypes = ['png']
+
+ const files = verifyFiles(rawFiles, {
+ acceptedFileTypes: acceptedFileTypes,
+ errorUnsupportedFile: 'error unsupported file',
+ errorLargeFile: 'error 2',
+ })
+
+ expect(files[0]).toEqual({
+ file: file1,
+ errorMessage: 'error unsupported file',
+ })
+ })
+
describe('when providing max size to file type', () => {
it('returns file size error', () => {
const file1 = createMockFile('fileName1.png', 100000000, 'image/png')