1*9c5db199SXin Li# Copyright 2015 The Chromium OS Authors. All rights reserved. 2*9c5db199SXin Li# Use of this source code is governed by a BSD-style license that can be 3*9c5db199SXin Li# found in the LICENSE file. 4*9c5db199SXin Li 5*9c5db199SXin Li 6*9c5db199SXin Lifrom autotest_lib.client.cros.video import video_player 7*9c5db199SXin Li 8*9c5db199SXin Li 9*9c5db199SXin Liclass VimeoPlayer(video_player.VideoPlayer): 10*9c5db199SXin Li """ 11*9c5db199SXin Li Provides an interface to interact with vimeo player on a chrome device. 12*9c5db199SXin Li 13*9c5db199SXin Li """ 14*9c5db199SXin Li 15*9c5db199SXin Li 16*9c5db199SXin Li def is_video_ready(self): 17*9c5db199SXin Li """ 18*9c5db199SXin Li Determines if a vimeo video is ready by using javascript. 19*9c5db199SXin Li 20*9c5db199SXin Li returns: bool, True if video is ready, else False. 21*9c5db199SXin Li 22*9c5db199SXin Li """ 23*9c5db199SXin Li return self.tab.EvaluateJavaScript('%s.isready' % self.video_id) 24*9c5db199SXin Li 25*9c5db199SXin Li 26*9c5db199SXin Li def play(self): 27*9c5db199SXin Li """ 28*9c5db199SXin Li Plays the vimeo video 29*9c5db199SXin Li 30*9c5db199SXin Li """ 31*9c5db199SXin Li self.tab.ExecuteJavaScript('%s.play()' % self.video_id) 32*9c5db199SXin Li 33*9c5db199SXin Li 34*9c5db199SXin Li def seek_to(self, t): 35*9c5db199SXin Li """ 36*9c5db199SXin Li Seeks a vimeo video to a time stamp. 37*9c5db199SXin Li 38*9c5db199SXin Li @param t: timedelta, time value to seek to. 39*9c5db199SXin Li 40*9c5db199SXin Li """ 41*9c5db199SXin Li self.tab.EvaluateJavaScript('%s.seekTo(%d)' % (self.video_id, 42*9c5db199SXin Li int(t.total_seconds()))) 43*9c5db199SXin Li 44*9c5db199SXin Li def has_video_finished_seeking(self): 45*9c5db199SXin Li """ 46*9c5db199SXin Li Determines if a vimeo video has finished seeking. 47*9c5db199SXin Li 48*9c5db199SXin Li """ 49*9c5db199SXin Li return self.tab.EvaluateJavaScript('%s.seeked' % self.video_id)