{"ScriptPreparationCode":"function generateMockTeamsWithData(records) {\r\n const mockData = [];\r\n\r\n for (let i = 0; i \u003C records; i\u002B\u002B) {\r\n const team = {\r\n teamName: \u0060Team ${i}\u0060,\r\n channels: []\r\n };\r\n\r\n // Generate a random number of channels per team (1 to 5)\r\n const channelCount = Math.floor(Math.random() * 5) \u002B 1;\r\n for (let j = 0; j \u003C channelCount; j\u002B\u002B) {\r\n const channel = {\r\n channelName: \u0060Channel ${j}\u0060,\r\n messages: []\r\n };\r\n\r\n // Generate a random number of messages per channel (1 to 10)\r\n const messageCount = Math.floor(Math.random() * 10) \u002B 1;\r\n for (let k = 0; k \u003C messageCount; k\u002B\u002B) {\r\n const message = {\r\n positiveMessageCount: Math.floor(Math.random() * 5),\r\n negativeMessageCount: Math.floor(Math.random() * 5),\r\n neutralMessageCount: Math.floor(Math.random() * 5),\r\n user: {\r\n id: \u0060user${Math.floor(Math.random() * 1000)}\u0060\r\n }\r\n };\r\n channel.messages.push(message);\r\n }\r\n team.channels.push(channel);\r\n }\r\n mockData.push(team);\r\n }\r\n\r\n return mockData;\r\n}\r\n\r\n// Usage\r\nvar teamsWithData = generateMockTeamsWithData(1000);","TestCases":[{"Name":"flatmap","Code":"function testFlatMap(teams) {\r\n const flatMessages = teams.flatMap((team) =\u003E team.channels.flatMap((channel) =\u003E channel.messages));\r\n let totalPositiveCount = 0;\r\n let totalNegativeCount = 0;\r\n let totalNeutralCount = 0;\r\n const uniqueUserIds = new Set();\r\n\r\n for (const message of flatMessages) {\r\n totalPositiveCount \u002B= message.positiveMessageCount;\r\n totalNegativeCount \u002B= message.negativeMessageCount;\r\n totalNeutralCount \u002B= message.neutralMessageCount;\r\n uniqueUserIds.add(message.user.id ?? \u0027\u0027);\r\n }\r\n\r\n return {\r\n totalPositiveCount,\r\n totalNegativeCount,\r\n totalNeutralCount,\r\n uniqueUserCount: uniqueUserIds.size\r\n };\r\n}\r\n\r\nconst result = testFlatMap(teamsWithData);","IsDeferred":false},{"Name":"for of","Code":"// Test function\r\nfunction testForOfLoop(teams) {\r\n let totalPositiveCount = 0;\r\n let totalNegativeCount = 0;\r\n let totalNeutralCount = 0;\r\n const uniqueUserIds = new Set();\r\n\r\n for (const team of teams) {\r\n for (const channel of team.channels) {\r\n for (const message of channel.messages) {\r\n totalPositiveCount \u002B= message.positiveMessageCount;\r\n totalNegativeCount \u002B= message.negativeMessageCount;\r\n totalNeutralCount \u002B= message.neutralMessageCount;\r\n uniqueUserIds.add(message.user.id ?? \u0027\u0027);\r\n }\r\n }\r\n }\r\n\r\n return {\r\n totalPositiveCount,\r\n totalNegativeCount,\r\n totalNeutralCount,\r\n uniqueUserCount: uniqueUserIds.size\r\n };\r\n}\r\n\r\nconst result2 = testForOfLoop(teamsWithData);\r\n","IsDeferred":false}]}