@@ -2880,20 +2880,20 @@ async function findClickable(locator, locateFn) {
28802880 els = await locateFn ( Locator . clickable . narrow ( literal ) )
28812881 if ( els . length ) return els
28822882
2883- els = await locateFn ( Locator . clickable . wide ( literal ) )
2884- if ( els . length ) return els
2885-
2886- els = await locateFn ( Locator . clickable . self ( literal ) )
2887- if ( els . length ) return els
2888-
28892883 // Try ARIA selector for accessible name
28902884 try {
2891- els = await this . browser . $$ ( `aria/${ locator . value } ` )
2885+ els = await locateFn ( `aria/${ locator . value } ` )
28922886 if ( els . length ) return els
28932887 } catch ( e ) {
28942888 // ARIA selector not supported or failed
28952889 }
28962890
2891+ els = await locateFn ( Locator . clickable . wide ( literal ) )
2892+ if ( els . length ) return els
2893+
2894+ els = await locateFn ( Locator . clickable . self ( literal ) )
2895+ if ( els . length ) return els
2896+
28972897 return await locateFn ( locator . value ) // by css or xpath
28982898}
28992899
@@ -2912,20 +2912,20 @@ async function findFields(locator) {
29122912 let els = await this . _locate ( Locator . field . labelEquals ( literal ) )
29132913 if ( els . length ) return els
29142914
2915- els = await this . _locate ( Locator . field . labelContains ( literal ) )
2916- if ( els . length ) return els
2917-
2918- els = await this . _locate ( Locator . field . byName ( literal ) )
2919- if ( els . length ) return els
2920-
29212915 // Try ARIA selector for accessible name
29222916 try {
2923- els = await this . browser . $$ ( `aria/${ locator . value } ` )
2917+ els = await this . _locate ( `aria/${ locator . value } ` )
29242918 if ( els . length ) return els
29252919 } catch ( e ) {
29262920 // ARIA selector not supported or failed
29272921 }
29282922
2923+ els = await this . _locate ( Locator . field . labelContains ( literal ) )
2924+ if ( els . length ) return els
2925+
2926+ els = await this . _locate ( Locator . field . byName ( literal ) )
2927+ if ( els . length ) return els
2928+
29292929 return await this . _locate ( locator . value ) // by css or xpath
29302930}
29312931
@@ -3066,17 +3066,18 @@ async function findCheckable(locator, locateFn) {
30663066 const literal = xpathLocator . literal ( locator . value )
30673067 els = await locateFn ( Locator . checkable . byText ( literal ) )
30683068 if ( els . length ) return els
3069- els = await locateFn ( Locator . checkable . byName ( literal ) )
3070- if ( els . length ) return els
30713069
30723070 // Try ARIA selector for accessible name
30733071 try {
3074- els = await this . browser . $$ ( `aria/${ locator . value } ` )
3072+ els = await locateFn ( `aria/${ locator . value } ` )
30753073 if ( els . length ) return els
30763074 } catch ( e ) {
30773075 // ARIA selector not supported or failed
30783076 }
30793077
3078+ els = await locateFn ( Locator . checkable . byName ( literal ) )
3079+ if ( els . length ) return els
3080+
30803081 return await locateFn ( locator . value ) // by css or xpath
30813082}
30823083
0 commit comments