@@ -307,6 +307,46 @@ def process_test_file(
307
307
seleniumbase_lines .append (command )
308
308
continue
309
309
310
+ # Handle self.slow_click(SELECTOR)
311
+ if not object_dict :
312
+ data = re .match (
313
+ r'''^(\s*)self\.slow_click'''
314
+ r'''\((r?['"][\S\s]+['"])\)([\S\s]*)'''
315
+ r'''$''' , line )
316
+ else :
317
+ data = re .match (
318
+ r'''^(\s*)self\.slow_click'''
319
+ r'''\(([\S\s]+)\)([\S\s]*)'''
320
+ r'''$''' , line )
321
+ if data :
322
+ whitespace = data .group (1 )
323
+ selector = '%s' % data .group (2 )
324
+ selector = remove_extra_slashes (selector )
325
+ page_selectors .append (selector )
326
+ comments = data .group (3 )
327
+ command = '''%sself.slow_click(%s)%s''' % (
328
+ whitespace , selector , comments )
329
+ if selector_dict :
330
+ if add_comments :
331
+ comments = " # %s" % selector
332
+ selector = optimize_selector (selector )
333
+ if selector in selector_dict .keys ():
334
+ selector_object = selector_dict [selector ]
335
+ changed .append (selector_object .split ('.' )[0 ])
336
+ command = '''%sself.slow_click(%s)%s''' % (
337
+ whitespace , selector_object , comments )
338
+ if object_dict :
339
+ if not add_comments :
340
+ comments = ""
341
+ object_name = selector
342
+ if object_name in object_dict .keys ():
343
+ selector_object = object_dict [object_name ]
344
+ changed .append (object_name .split ('.' )[0 ])
345
+ command = '''%sself.slow_click(%s)%s''' % (
346
+ whitespace , selector_object , comments )
347
+ seleniumbase_lines .append (command )
348
+ continue
349
+
310
350
# Handle self.assert_element(SELECTOR)
311
351
if not object_dict :
312
352
data = re .match (
@@ -428,6 +468,46 @@ def process_test_file(
428
468
seleniumbase_lines .append (command )
429
469
continue
430
470
471
+ # Handle self.get_element(SELECTOR)
472
+ if not object_dict :
473
+ data = re .match (
474
+ r'''^(\s*)self\.get_element'''
475
+ r'''\((r?['"][\S\s]+['"])\)([\S\s]*)'''
476
+ r'''$''' , line )
477
+ else :
478
+ data = re .match (
479
+ r'''^(\s*)self\.get_element'''
480
+ r'''\(([\S\s]+)\)([\S\s]*)'''
481
+ r'''$''' , line )
482
+ if data :
483
+ whitespace = data .group (1 )
484
+ selector = '%s' % data .group (2 )
485
+ selector = remove_extra_slashes (selector )
486
+ page_selectors .append (selector )
487
+ comments = data .group (3 )
488
+ command = '''%sself.get_element(%s)%s''' % (
489
+ whitespace , selector , comments )
490
+ if selector_dict :
491
+ if add_comments :
492
+ comments = " # %s" % selector
493
+ selector = optimize_selector (selector )
494
+ if selector in selector_dict .keys ():
495
+ selector_object = selector_dict [selector ]
496
+ changed .append (selector_object .split ('.' )[0 ])
497
+ command = '''%sself.get_element(%s)%s''' % (
498
+ whitespace , selector_object , comments )
499
+ if object_dict :
500
+ if not add_comments :
501
+ comments = ""
502
+ object_name = selector
503
+ if object_name in object_dict .keys ():
504
+ selector_object = object_dict [object_name ]
505
+ changed .append (object_name .split ('.' )[0 ])
506
+ command = '''%sself.get_element(%s)%s''' % (
507
+ whitespace , selector_object , comments )
508
+ seleniumbase_lines .append (command )
509
+ continue
510
+
431
511
# Handle self.wait_for_element(SELECTOR)
432
512
if not object_dict :
433
513
data = re .match (
@@ -550,6 +630,47 @@ def process_test_file(
550
630
seleniumbase_lines .append (command )
551
631
continue
552
632
633
+ # Handle self.type(SELECTOR, TEXT)
634
+ if not object_dict :
635
+ data = re .match (
636
+ r'''^(\s*)self\.type'''
637
+ r'''\((r?['"][\S\s]+['"]),\s?([\S\s]+)\)([\S\s]*)'''
638
+ r'''$''' , line )
639
+ else :
640
+ data = re .match (
641
+ r'''^(\s*)self\.type'''
642
+ r'''\(([\S\s]+),\s?([\S\s]+)\)([\S\s]*)'''
643
+ r'''$''' , line )
644
+ if data :
645
+ whitespace = data .group (1 )
646
+ selector = '%s' % data .group (2 )
647
+ selector = remove_extra_slashes (selector )
648
+ page_selectors .append (selector )
649
+ text = data .group (3 )
650
+ comments = data .group (4 )
651
+ command = '''%sself.type(%s, %s)%s''' % (
652
+ whitespace , selector , text , comments )
653
+ if selector_dict :
654
+ if add_comments :
655
+ comments = " # %s" % selector
656
+ selector = optimize_selector (selector )
657
+ if selector in selector_dict .keys ():
658
+ selector_object = selector_dict [selector ]
659
+ changed .append (selector_object .split ('.' )[0 ])
660
+ command = '''%sself.type(%s, %s)%s''' % (
661
+ whitespace , selector_object , text , comments )
662
+ if object_dict :
663
+ if not add_comments :
664
+ comments = ""
665
+ object_name = selector
666
+ if object_name in object_dict .keys ():
667
+ selector_object = object_dict [object_name ]
668
+ changed .append (object_name .split ('.' )[0 ])
669
+ command = '''%sself.type(%s, %s)%s''' % (
670
+ whitespace , selector_object , text , comments )
671
+ seleniumbase_lines .append (command )
672
+ continue
673
+
553
674
# Handle self.send_keys(SELECTOR, TEXT)
554
675
if not object_dict :
555
676
data = re .match (
0 commit comments