From 26406053db54f4f866cf4f9dd0f1ed55d0f70312 Mon Sep 17 00:00:00 2001 From: Udayboppasafelite Date: Mon, 15 Jun 2026 21:53:47 -0400 Subject: [PATCH] Advanced Client work for Safeco --- .../business-logic/data/ClientData.ts | 34 +++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/playwright-tests/business-logic/data/ClientData.ts b/playwright-tests/business-logic/data/ClientData.ts index c52a01a0..e2854959 100644 --- a/playwright-tests/business-logic/data/ClientData.ts +++ b/playwright-tests/business-logic/data/ClientData.ts @@ -336,8 +336,38 @@ export default class ClientData { } static getClientByTag(clientTag: string) { - return [...essentialClients, ...advancedClients].find( - client => client.clientTag === clientTag + return this.resolveClientForTest(clientTag); + } + + static getClientByAccountNumber(accountNumber: string) { + const advancedMatch = advancedClients.find(client => client.accountNumber === accountNumber); + if (advancedMatch) { + return advancedMatch; + } + return essentialClients.find(client => client.accountNumber === accountNumber); + } + + static resolveClientForTest(clientTag: string, accountNumber?: string): IClient | undefined { + const normalizedTag = clientTag.toLowerCase(); + + if (accountNumber) { + const clientByAccount = this.getClientByAccountNumber(accountNumber); + if (clientByAccount?.clientTag.toLowerCase() === normalizedTag) { + return clientByAccount; + } + } + + const essentialMatch = essentialClients.find( + client => client.clientTag.toLowerCase() === normalizedTag ); + const advancedMatch = advancedClients.find( + client => client.clientTag.toLowerCase() === normalizedTag + ); + + if (essentialMatch && advancedMatch) { + return essentialMatch; + } + + return advancedMatch ?? essentialMatch; } } \ No newline at end of file