1010from importlib import import_module , reload
1111from io import StringIO
1212from pathlib import Path
13-
13+
1414def log (message ):
1515 js .postMessage (json .dumps ({"std_output" : message }))
1616
@@ -20,18 +20,21 @@ def log(message):
2020 try :
2121 import robot
2222 from robot .libdocpkg import LibraryDocumentation
23+ from robot .conf import RobotSettings
2324 except ImportError :
2425 robot = None
2526
2627 if robot is None :
2728 log (f"Install Robot Framework" )
28- rf_version = f"=={ version } " if version else ""
29- requirements_list .insert (0 , f"robotframework{ rf_version } " )
29+ if not [req for req in requirements_list if req .split ('==' )[0 ] == 'robotframework' ]:
30+ rf_version = f"=={ version } " if version else ""
31+ requirements_list .insert (0 , f"robotframework{ rf_version } " )
3032 try :
3133 await micropip .install (requirements_list , keep_going = True )
3234 time .sleep (1 )
3335 import robot
3436 from robot .libdocpkg import LibraryDocumentation
37+ from robot .conf import RobotSettings
3538 log (f" = version { robot .__version__ } \n " )
3639 except Exception as e :
3740 js .console .log (f"Installation Exception: { e } " )
@@ -111,6 +114,8 @@ def write_file(file):
111114 js .console .log (f"Files in working dir: { os .listdir ('.' )} " )
112115 result = - 2
113116
117+ console_links_enabled = "ConsoleLinks" in RobotSettings ._cli_opts
118+
114119 try :
115120 if test_case_name :
116121 kwargs = {"test" : test_case_name }
@@ -122,9 +127,13 @@ def write_file(file):
122127 if robot_arguments :
123128 log (f"Robot Run Arguments: { robot_args } \n " )
124129 log (f"\n Running Robot Framework:\n " )
130+ if console_links_enabled :
131+ robot_arguments ["consolelinks" ] = 'off'
125132 else :
126133 log (f"> robot --loglevel TRACE:INFO --exclude EXCL --skip SKIP\n "
127134 f" --removekeywords tag:REMOVE --flattenkeywords tag:FLAT{ testcli } .\n " )
135+ if console_links_enabled :
136+ kwargs ["consolelinks" ] = 'off'
128137
129138 org_stdout = sys .__stdout__
130139 org_stderr = sys .__stderr__
0 commit comments