diff --git a/code/websites/pokedex.online/tests/unit/composables/useGamemasterFiles.test.js b/code/websites/pokedex.online/tests/unit/composables/useGamemasterFiles.test.js index e11faad..354a59c 100644 --- a/code/websites/pokedex.online/tests/unit/composables/useGamemasterFiles.test.js +++ b/code/websites/pokedex.online/tests/unit/composables/useGamemasterFiles.test.js @@ -197,7 +197,7 @@ describe('useGamemasterFiles', () => { available: [{ filename: 'moves.json', size: 3000 }] }); await composable.loadStatus(); - + // Now set up the getMoves to fail mockClient.getMoves.mockRejectedValueOnce(new Error('Load failed')); composable.selectedFile.value = 'moves'; @@ -333,13 +333,17 @@ describe('useGamemasterFiles', () => { }); it('should be true for large files', async () => { - // Create a large string that will split into many lines - const largeContent = Array(15000).fill('line').join('\n'); - mockClient.getPokemon.mockResolvedValueOnce(largeContent); + // Create large array that when JSON stringified will have many lines + const largeData = { + items: Array(12000).fill({ id: 1, data: 'test' }) + }; + mockClient.getPokemon.mockResolvedValueOnce(largeData); composable.selectedFile.value = 'pokemon'; await composable.loadFile(); + // Verify we have many lines (JSON.stringify adds newlines for pretty-print) + expect(composable.fileLines.value.length).toBeGreaterThan(10000); expect(composable.fileTooLarge.value).toBe(true); }); });