diff --git a/cli/src/commands/asset.spec.ts b/cli/src/commands/asset.spec.ts index f4c969195f7a4..4bac1d00abf97 100644 --- a/cli/src/commands/asset.spec.ts +++ b/cli/src/commands/asset.spec.ts @@ -190,11 +190,12 @@ describe('checkForDuplicates', () => { }); }); - it('throws error when check duplicates retry is failed', async () => { + it('returns results when check duplicates retry is failed', async () => { vi.mocked(checkBulkUpload).mockRejectedValue(new Error('Network error')); - await expect(checkForDuplicates([testFilePath], { concurrency: 1 })).rejects.toThrowError( - 'An error occurred while checking for duplicates: Network error', - ); + await expect(checkForDuplicates([testFilePath], { concurrency: 1 })).resolves.toEqual({ + duplicates: [], + newFiles: [], + }); }); }); diff --git a/cli/src/commands/asset.ts b/cli/src/commands/asset.ts index 7ae1c64079196..bb00d5cbe03f9 100644 --- a/cli/src/commands/asset.ts +++ b/cli/src/commands/asset.ts @@ -101,11 +101,12 @@ export const checkForDuplicates = async (files: string[], { concurrency, skipHas const newFiles: string[] = []; const duplicates: Asset[] = []; - const checkBulkUploadQueue = new Queue( + const checkBulkUploadQueue = new Queue( async (assets: AssetBulkUploadCheckResults) => { const response = await checkBulkUpload({ assetBulkUploadCheckDto: { assets } }); const results = response.results as AssetBulkUploadCheckResults; + for (const { id: filepath, assetId, action } of results) { if (action === Action.Accept) { newFiles.push(filepath); @@ -116,7 +117,6 @@ export const checkForDuplicates = async (files: string[], { concurrency, skipHas } checkProgressBar.increment(assets.length); - return { message: 'success' }; }, { concurrency, retry: 3 }, ); @@ -130,7 +130,7 @@ export const checkForDuplicates = async (files: string[], { concurrency, skipHas results.push(dto); checkBulkUploadRequests.push(dto); - if (checkBulkUploadRequests.length >= concurrency) { + if (checkBulkUploadRequests.length > concurrency) { void checkBulkUploadQueue.push([...checkBulkUploadRequests]); checkBulkUploadRequests = []; }