@@ -328,19 +328,29 @@ describe('ElementHandle.fill', function() {
328
328
} ) ;
329
329
330
330
describe ( 'ElementHandle.selectText' , function ( ) {
331
- it . fail ( FFOX ) ( 'should select textarea' , async ( { page, server} ) => {
331
+ it ( 'should select textarea' , async ( { page, server} ) => {
332
332
await page . goto ( server . PREFIX + '/input/textarea.html' ) ;
333
333
const textarea = await page . $ ( 'textarea' ) ;
334
334
await textarea . evaluate ( textarea => textarea . value = 'some value' ) ;
335
335
await textarea . selectText ( ) ;
336
- expect ( await page . evaluate ( ( ) => window . getSelection ( ) . toString ( ) ) ) . toBe ( 'some value' ) ;
336
+ if ( FFOX ) {
337
+ expect ( await textarea . evaluate ( el => el . selectionStart ) ) . toBe ( 0 ) ;
338
+ expect ( await textarea . evaluate ( el => el . selectionEnd ) ) . toBe ( 10 ) ;
339
+ } else {
340
+ expect ( await page . evaluate ( ( ) => window . getSelection ( ) . toString ( ) ) ) . toBe ( 'some value' ) ;
341
+ }
337
342
} ) ;
338
- it . fail ( FFOX ) ( 'should select input' , async ( { page, server} ) => {
343
+ it ( 'should select input' , async ( { page, server} ) => {
339
344
await page . goto ( server . PREFIX + '/input/textarea.html' ) ;
340
345
const input = await page . $ ( 'input' ) ;
341
346
await input . evaluate ( input => input . value = 'some value' ) ;
342
347
await input . selectText ( ) ;
343
- expect ( await page . evaluate ( ( ) => window . getSelection ( ) . toString ( ) ) ) . toBe ( 'some value' ) ;
348
+ if ( FFOX ) {
349
+ expect ( await input . evaluate ( el => el . selectionStart ) ) . toBe ( 0 ) ;
350
+ expect ( await input . evaluate ( el => el . selectionEnd ) ) . toBe ( 10 ) ;
351
+ } else {
352
+ expect ( await page . evaluate ( ( ) => window . getSelection ( ) . toString ( ) ) ) . toBe ( 'some value' ) ;
353
+ }
344
354
} ) ;
345
355
it ( 'should select plain div' , async ( { page, server} ) => {
346
356
await page . goto ( server . PREFIX + '/input/textarea.html' ) ;
0 commit comments