const fallbackStore = require("./src/utils/fallback-store"); async function testFallbackStore() { console.log("🧪 Testing Fallback Store Functionality\n"); // Test 1: Check initial state console.log("1. Initial State:"); console.log(` - Active: ${fallbackStore.isActive}`); console.log(` - Events Count: ${fallbackStore.events.size}`); console.log(` - Total Tickets: ${fallbackStore.globalStats.totalTickets}`); console.log(` - Total Sold: ${fallbackStore.globalStats.totalSold}\n`); // Test 2: Activate fallback store console.log("2. Activating Fallback Store..."); fallbackStore.activate("Test activation"); console.log(` - Active: ${fallbackStore.isActive}\n`); // Test 3: Check if seeding is needed console.log("3. Checking Seeding Status:"); if (fallbackStore.events.size === 0) { console.log(" - Fallback store is empty, attempting to seed..."); await fallbackStore.attemptReseed(); } else { console.log(" - Fallback store already has data"); } console.log(` - Events Count: ${fallbackStore.events.size}\n`); // Test 4: Test ticket purchase if events exist if (fallbackStore.events.size > 0) { console.log("4. Testing Ticket Purchase:"); const eventId = "1"; const purchaseId = "test-purchase-123"; const result = fallbackStore.purchaseTicket(eventId, purchaseId); if (result.success) { console.log(` - Purchase successful: ${result.ticket}`); console.log(` - Sold count: ${result.soldCount}`); } else { console.log(` - Purchase failed: ${result.error}`); } console.log( ` - Remaining tickets: ${ fallbackStore.getEventStats(eventId)?.remainingTickets || 0 }\n` ); } // Test 5: Get status console.log("5. Fallback Store Status:"); const status = fallbackStore.getStatus(); console.log(` - Active: ${status.active}`); console.log(` - Events: ${status.eventsCount}`); console.log(` - Total Tickets: ${status.totalTickets}`); console.log(` - Total Sold: ${status.totalSold}\n`); // Test 6: Deactivate console.log("6. Deactivating Fallback Store..."); fallbackStore.deactivate(); console.log(` - Active: ${fallbackStore.isActive}\n`); console.log("✅ Fallback Store Test Completed!"); } // Run the test testFallbackStore().catch(console.error);