How to use _get_remote_video_url method in toolium

Best Python code snippet using toolium_python

test_driver_utils.py

Source:test_driver_utils.py Github

copy

Full Screen

...207 assert selenoid_url == req_mock.request_history[2].url208def test_get_remote_node_local_execution(driver_wrapper, utils):209 driver_wrapper.config.set('Server', 'enabled', 'false')210 assert utils.get_remote_node() == ('local', None)211def test_get_remote_video_url(utils):212 # Configure mock213 url = 'http://{}:{}/video'.format('10.20.30.40', 3000)214 video_url = 'http://{}:{}/download_video/f4.mp4'.format('10.20.30.40', 3000)215 video_response_json = {'exit_code': 1, 'out': [],216 'error': ['Cannot call this endpoint without required parameters: session and action'],217 'available_videos': {'5af': {'size': 489701,218 'session': '5af',219 'last_modified': 1460041262558,220 'download_url': video_url,221 'absolute_path': 'C:\\f4.mp4'}},222 'current_videos': []}223 with requests_mock.mock() as req_mock:224 req_mock.get(url, json=video_response_json)225 # Get remote video url and check result226 assert utils._get_remote_video_url('10.20.30.40', '5af') == video_url227 assert url == req_mock.request_history[0].url228def test_get_remote_video_url_no_videos(utils):229 # Configure mock230 url = 'http://{}:{}/video'.format('10.20.30.40', 3000)231 video_response_json = {'exit_code': 1, 'out': [],232 'error': ['Cannot call this endpoint without required parameters: session and action'],233 'available_videos': {},234 'current_videos': []}235 with requests_mock.mock() as req_mock:236 req_mock.get(url, json=video_response_json)237 # Get remote video url and check result238 assert utils._get_remote_video_url('10.20.30.40', '5af') is None239 assert url == req_mock.request_history[0].url240def test_is_remote_video_enabled_grid(utils):241 # Configure mock242 url = 'http://{}:{}/config'.format('10.20.30.40', 3000)243 config_response_json = {'out': [], 'error': [], 'exit_code': 0,244 'filename': ['selenium_grid_extras_config.json'],245 'config_runtime': {'theConfigMap': {246 'video_recording_options': {'width': '1024', 'videos_to_keep': '5',247 'frames': '30',248 'record_test_videos': 'true'}}}}249 with requests_mock.mock() as req_mock:250 req_mock.get(url, json=config_response_json)251 # Get remote video configuration and check result252 assert utils.is_remote_video_enabled('grid', '10.20.30.40') is True...

Full Screen

Full Screen

utilities.py

Source:utilities.py Github

copy

Full Screen

...272 server_url = 'https://{}{}:{}'.format(server_auth, server_host, server_port)273 return server_url274 def download_remote_video(self, remote_node, session_id, video_name):275 try:276 video_url = self._get_remote_video_url(remote_node, session_id)277 except requests.exceptions.ConnectionError:278 self.logger.warning("Remote server seems not to have video capabilities")279 return280 if not video_url:281 self.logger.warning("Test video not found in node '%s'", remote_node)282 return283 self._download_video(video_url, video_name)284 @staticmethod285 def _get_remote_node_url(remote_node):286 logging.getLogger("requests").setLevel(logging.WARNING)287 grid_extras_port = 3000288 return 'http://{}:{}'.format(remote_node, grid_extras_port)289 def _get_remote_video_url(self, remote_node, session_id):290 url = '{}/video'.format(self._get_remote_node_url(remote_node))291 timeout = time.time() + 5 # 5 seconds from now292 # Requests videos list until timeout or the video url is found293 video_url = None294 while time.time() < timeout:295 response = requests.get(url).json()296 try:297 video_url = response['available_videos'][session_id]['download_url']298 break299 except KeyError:300 time.sleep(1)301 return video_url302 def _download_video(self, video_url, video_name):303 from arc.core.driver.driver_manager import DriverManager...

Full Screen

Full Screen

driver_utils.py

Source:driver_utils.py Github

copy

Full Screen

...162 video_name = get_valid_filename(video_name)163 if server_type == 'grid':164 # Download video from Grid Extras165 try:166 video_url = self._get_remote_video_url(self.driver_wrapper.remote_node, self.driver_wrapper.session_id)167 except requests.exceptions.ConnectionError:168 self.logger.warning("Remote server seems not to have video capabilities")169 return170 if not video_url:171 self.logger.warning("Test video not found in node '%s'", self.driver_wrapper.remote_node)172 return173 self._download_video(video_url, video_name)174 elif server_type in ['ggr', 'selenoid']:175 Selenoid(self.driver_wrapper).download_session_video(video_name)176 def _get_remote_node_url(self, remote_node):177 """Get grid-extras url of a node178 :param remote_node: remote node name179 :returns: grid-extras url180 """181 logging.getLogger("requests").setLevel(logging.WARNING)182 gridextras_port = 3000183 return 'http://{}:{}'.format(remote_node, gridextras_port)184 def _get_remote_video_url(self, remote_node, session_id):185 """Get grid-extras url to download videos186 :param remote_node: remote node name187 :param session_id: test session id188 :returns: grid-extras url to download videos189 """190 url = '{}/video'.format(self._get_remote_node_url(remote_node))191 timeout = time.time() + 5 # 5 seconds from now192 # Requests videos list until timeout or the video url is found193 video_url = None194 while time.time() < timeout:195 response = requests.get(url).json()196 try:197 video_url = response['available_videos'][session_id]['download_url']198 break...

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run toolium automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful