@@ -307,6 +307,46 @@ def process_test_file(
307307 seleniumbase_lines .append (command )
308308 continue
309309
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+
310350 # Handle self.assert_element(SELECTOR)
311351 if not object_dict :
312352 data = re .match (
@@ -428,6 +468,46 @@ def process_test_file(
428468 seleniumbase_lines .append (command )
429469 continue
430470
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+
431511 # Handle self.wait_for_element(SELECTOR)
432512 if not object_dict :
433513 data = re .match (
@@ -550,6 +630,47 @@ def process_test_file(
550630 seleniumbase_lines .append (command )
551631 continue
552632
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+
553674 # Handle self.send_keys(SELECTOR, TEXT)
554675 if not object_dict :
555676 data = re .match (
0 commit comments