only wrap css/xpath selectors in locatorFrame

This commit is contained in:
Simon Knott 2024-10-23 15:23:21 +02:00
parent 9cebdb66d1
commit 27114967a5
No known key found for this signature in database
GPG key ID: 8CEDC00028084AEC

View file

@ -164,11 +164,12 @@ function innerAsLocators(factory: LocatorFactory, parsed: ParsedSelector, isFram
const extendedTokens = lastTokens.map(token => const extendedTokens = lastTokens.map(token =>
factory.chainLocators([token, factory.generateLocator(base, 'frame', '')]) factory.chainLocators([token, factory.generateLocator(base, 'frame', '')])
); );
extendedTokens.push( if (['xpath', 'css'].includes(lastPart.name)) {
factory.generateLocator(base, 'frame-locator', stringifySelector({ parts: [lastPart] })) extendedTokens.push(
); factory.generateLocator(base, 'frame-locator', stringifySelector({ parts: [lastPart] })),
if (['xpath', 'css'].includes(lastPart.name)) factory.generateLocator(base, 'frame-locator', stringifySelector({ parts: [lastPart] }, true))
extendedTokens.push(factory.generateLocator(base, 'frame-locator', stringifySelector({ parts: [lastPart] }, true))); );
}
lastTokens.splice(0, lastTokens.length, ...extendedTokens); lastTokens.splice(0, lastTokens.length, ...extendedTokens);
nextBase = 'frame-locator'; nextBase = 'frame-locator';