def RunAction(self, tab): try: tab.ExecuteJavaScript('window.__loopMedia("%s", %i);' % (self._selector, self._loop_count)) if self._timeout_in_seconds > 0: self.WaitForEvent(tab, self._selector, 'loop', self._timeout_in_seconds) except exceptions.EvaluateException: raise page_action.PageActionFailed('Cannot loop media element(s) with ' 'selector = %s.' % self._selector)
def HasEventCompletedOrError(self, tab, selector, event_name): if tab.EvaluateJavaScript( 'window.__hasEventCompleted({{ selector }}, {{ event_name }});', selector=selector, event_name=event_name): return True error = tab.EvaluateJavaScript('window.__error') if error: raise page_action.PageActionFailed( 'Detected media error while waiting for %s: %s' % (event_name, error)) return False
def RunAction(self, tab): try: tab.ExecuteJavaScript( 'window.__seekMedia("%s", "%s", %i, "%s");' % (self._selector, self._seconds, self._log_time, self._label)) if self._timeout_in_seconds > 0: self.WaitForEvent(tab, self._selector, 'seeked', self._timeout_in_seconds) except exceptions.EvaluateException: raise page_action.PageActionFailed('Cannot seek media element(s) with ' 'selector = %s.' % self._selector)
def RunAction(self, tab): try: tab.ExecuteJavaScript('window.__loadMediaAndAwait("%s", "%s");' % (self._selector, self._event_to_await)) if self._timeout_in_seconds > 0: self.WaitForEvent(tab, self._selector, self._event_to_await, self._timeout_in_seconds) except exceptions.EvaluateException: raise page_action.PageActionFailed( 'Failed waiting for event "%s" on ' 'elements with selector = %s.' % (self._event_to_await, self._selector))
def RunAction(self, tab): try: tab.ExecuteJavaScript( 'window.__loadMediaAndAwait({{ selector }}, {{ event }});', selector=self._selector, event=self._event_to_await) if self.timeout > 0: self.WaitForEvent(tab, self._selector, self._event_to_await, self.timeout) except exceptions.EvaluateException: raise page_action.PageActionFailed( 'Failed waiting for event "%s" on ' 'elements with selector = %s.' % (self._event_to_await, self._selector))
def RunAction(self, tab): try: tab.ExecuteJavaScript('window.__playMedia("%s");' % self._selector) # Check if we need to wait for 'playing' event to fire. if self._playing_event_timeout_in_seconds > 0: self.WaitForEvent(tab, self._selector, 'playing', self._playing_event_timeout_in_seconds) # Check if we need to wait for 'ended' event to fire. if self._ended_event_timeout_in_seconds > 0: self.WaitForEvent(tab, self._selector, 'ended', self._ended_event_timeout_in_seconds) except exceptions.EvaluateException: raise page_action.PageActionFailed('Cannot play media element(s) with ' 'selector = %s.' % self._selector)
def RunAction(self, tab): # TODO(catapult:#3028): Render in JavaScript method when supported by API. code = js_template.Render( 'window.__loadMediaAndAwait({{ selector }}, {{ event }});', selector=self._selector, event=self._event_to_await) try: tab.ExecuteJavaScript(code) if self._timeout_in_seconds > 0: self.WaitForEvent(tab, self._selector, self._event_to_await, self._timeout_in_seconds) except exceptions.EvaluateException: raise page_action.PageActionFailed('Failed waiting for event "%s" on ' 'elements with selector = %s.' % (self._event_to_await, self._selector))
def RunAction(self, tab): try: tab.ExecuteJavaScript( 'window.__seekMedia(' '{{ selector }}, {{ seconds }}, {{ log_time }}, {{ label}});', selector=self._selector, seconds=str(self._seconds), log_time=self._log_time, label=self._label) if self.timeout > 0: self.WaitForEvent(tab, self._selector, 'seeked', self.timeout) except exceptions.EvaluateException: raise page_action.PageActionFailed( 'Cannot seek media element(s) with ' 'selector = %s.' % self._selector)
def RunAction(self, tab): # TODO(catapult:#3028): Render in JavaScript method when supported by API. code = js_template.Render( 'window.__loopMedia({{ selector }}, {{ loop_count }});', selector=self._selector, loop_count=self._loop_count) try: tab.ExecuteJavaScript(code) if self._timeout_in_seconds > 0: self.WaitForEvent(tab, self._selector, 'loop', self._timeout_in_seconds) except exceptions.EvaluateException: raise page_action.PageActionFailed( 'Cannot loop media element(s) with ' 'selector = %s.' % self._selector)
def RunAction(self, tab): # TODO(catapult:#3028): Render in JavaScript method when supported by API. code = js_template.Render('window.__playMedia({{ selector }});', selector=self._selector) try: tab.ExecuteJavaScript(code) # Check if we need to wait for 'playing' event to fire. if self._playing_event_timeout_in_seconds > 0: self.WaitForEvent(tab, self._selector, 'playing', self._playing_event_timeout_in_seconds) # Check if we need to wait for 'ended' event to fire. if self._ended_event_timeout_in_seconds > 0: self.WaitForEvent(tab, self._selector, 'ended', self._ended_event_timeout_in_seconds) except exceptions.EvaluateException: raise page_action.PageActionFailed( 'Cannot play media element(s) with ' 'selector = %s.' % self._selector)
def RunAction(self, tab): # TODO(catapult:#3028): Render in JavaScript method when supported by API. code = js_template.Render( 'window.__seekMedia(' '{{ selector }}, {{ seconds }}, {{ log_time }}, {{ label}});', selector=self._selector, seconds=str( self._seconds), # TODO: Is string convertion intended? log_time=self._log_time, label=self._label) try: # TODO(catapult:#3028): Fix interpolation of JavaScript values. tab.ExecuteJavaScript(code) if self._timeout_in_seconds > 0: self.WaitForEvent(tab, self._selector, 'seeked', self._timeout_in_seconds) except exceptions.EvaluateException: raise page_action.PageActionFailed( 'Cannot seek media element(s) with ' 'selector = %s.' % self._selector)