/** * Test script to check localStorage persistence for Safe Paper Trading */ // Test the localStorage data that should persist const testLocalStorageKeys = [ 'safePaperTrades', 'safePaperBalance', 'safePaperTrading_paperTrades', 'safePaperTrading_paperBalance', 'safePaperTrading_currentAnalysis', 'safePaperTrading_analysisHistory', 'safePaperTrading_learningInsights' ]; console.log('šŸ“‹ Testing Safe Paper Trading localStorage persistence...\n'); // Create a sample trade to test with const sampleTrade = { id: 'TEST_' + Date.now(), symbol: 'SOLUSD', type: 'BUY', size: 100, entryPrice: 142.50, timestamp: new Date().toISOString(), status: 'OPEN', confidence: 75, reasoning: 'Test trade for localStorage persistence' }; console.log('āœ… Sample trade created:', JSON.stringify(sampleTrade, null, 2)); // Test saving to both key patterns const currentTrades = [sampleTrade]; const currentBalance = 1000; console.log('\nšŸ’¾ Saving to localStorage with both key patterns...'); // Save using both patterns localStorage.setItem('safePaperTrades', JSON.stringify(currentTrades)); localStorage.setItem('safePaperBalance', currentBalance.toString()); localStorage.setItem('safePaperTrading_paperTrades', JSON.stringify(currentTrades)); localStorage.setItem('safePaperTrading_paperBalance', currentBalance.toString()); console.log('āœ… Data saved to localStorage'); // Test reading back console.log('\nšŸ“– Reading back from localStorage...'); testLocalStorageKeys.forEach(key => { const value = localStorage.getItem(key); if (value) { try { const parsed = JSON.parse(value); console.log(`āœ… ${key}: ${Array.isArray(parsed) ? `${parsed.length} trades` : `value: ${parsed}`}`); } catch (e) { console.log(`āœ… ${key}: ${value}`); } } else { console.log(`āŒ ${key}: NOT FOUND`); } }); // Test the backward compatibility loading logic console.log('\nšŸ”„ Testing backward compatibility loading...'); const loadedTrades = localStorage.getItem('safePaperTrading_paperTrades') || localStorage.getItem('safePaperTrades'); const loadedBalance = localStorage.getItem('safePaperTrading_paperBalance') || localStorage.getItem('safePaperBalance'); if (loadedTrades) { const trades = JSON.parse(loadedTrades); console.log(`āœ… Successfully loaded ${trades.length} trades using backward compatibility`); console.log(`šŸ“Š Trade details:`, trades[0]); } else { console.log('āŒ Failed to load trades using backward compatibility'); } if (loadedBalance) { console.log(`āœ… Successfully loaded balance: $${loadedBalance}`); } else { console.log('āŒ Failed to load balance using backward compatibility'); } console.log('\nšŸŽÆ Test completed!'); console.log('šŸ’” If you see this data when you refresh the page, localStorage persistence is working correctly.'); module.exports = { sampleTrade, testLocalStorageKeys };