def test_buildVideoLinks_should_try_scraping_first(self): sys.modules["__main__"].core._fetchPage.return_value = {"status":303, "content": ""} sys.modules["__main__"].common.parseDOM.return_value = [] player = YouTubePlayer() player.extractVideoLinksFromYoutube({},{"videoid":"123"}) sys.modules["__main__"].core._fetchPage.assert_any_call({"link":player.urls["video_stream"] % "123", "login":"******"})
def test__getVideoLinks_should_return_empty_dictionary_on_missing_map(self): sys.modules["__main__"].core._fetchPage.return_value = {"status":303, "content": ""} sys.modules["__main__"].common.parseDOM.return_value = [] player = YouTubePlayer() (result, status) = player.extractVideoLinksFromYoutube({},{"videoid":"123"}) assert (result == {})
def test_getVideoLinks_should_parse_live_video_structure_on_webpage_correctly(self): sys.modules["__main__"].core._fetchPage.return_value = {"status": 200, "content": self.readTestInput("live-video-page-e93MaEwrsfc.html", False)} sys.modules["__main__"].common.parseDOM.return_value = [] player = YouTubePlayer() sys.modules["__main__"].core._findErrors.return_value = "mock error" result = player.extractVideoLinksFromYoutube({}, {"videoid": "some_id"}) print repr(result) assert(result[0].has_key(35))
def test_buildVideoObject_should_get_video_information_from_getInfo(self): sys.modules["__main__"].settings.getSetting.return_value = "" player = YouTubePlayer() player.getInfo = Mock() player.getInfo.return_value = ({}, 303) player.extractVideoLinksFromYoutube = Mock() player.extractVideoLinksFromYoutube.return_value = ({}, {}) player.buildVideoObject({}) player.getInfo.assert_called_with({})
def test_buildVideoObject_should_use_pre_defined_error_messages_on_missing_url(self): sys.modules["__main__"].settings.getSetting.return_value = "" player = YouTubePlayer() player.getInfo = Mock() player.getInfo.return_value = ({}, 303) player.getLocalFileSource = Mock(return_value="") player.extractVideoLinksFromYoutube = Mock(return_value = ({}, {})) player.buildVideoObject({}) player.getInfo.assert_called_with({}) sys.modules["__main__"].language.assert_called_with(30618)
def test_buildVideoObject_should_not_scrape_webpage_if_local_file_is_found(self): sys.modules["__main__"].subtitles.getLocalFileSource.return_value = "somePath/someTitle.mp4" params = {"videoid": "some_id"} player = YouTubePlayer() player.getInfo = Mock() player.extractVideoLinksFromYoutube = Mock() video = {"videoid": "some_id", "Title": "someTitle"} player.getInfo.return_value = (video, 200) player.buildVideoObject(params) assert(player.extractVideoLinksFromYoutube.call_count == 0)
def test_buildVideoObject_should_call_getVideoLinks_if_local_file_not_found(self): sys.modules["__main__"].subtitles.getLocalFileSource.return_value = "" sys.modules["__main__"].settings.getSetting.return_value = "1" params = {"videoid": "some_id"} player = YouTubePlayer() player.getInfo = Mock() player.extractVideoLinksFromYoutube = Mock() player.extractVideoLinksFromYoutube.return_value = ({}, {}) video = {"videoid": "some_id", "Title": "someTitle"} player.getInfo.return_value = (video, 200) player.buildVideoObject(params) player.extractVideoLinksFromYoutube.assert_any_call(video, params)
def test_buildVideoObject_should_call_selectVideoQuality_if_local_file_not_found_and_remote_links_found(self): sys.modules["__main__"].subtitles.getLocalFileSource.return_value = "" params = {"videoid": "some_id"} video = {"videoid": "some_id", "Title": "someTitle"} player = YouTubePlayer() player.getInfo = Mock() player.getInfo.return_value = (video, 200) player.extractVideoLinksFromYoutube = Mock() player.extractVideoLinksFromYoutube.return_value = ({22: "720p"}, {}) player.selectVideoQuality = Mock() player.buildVideoObject(params) player.selectVideoQuality.assert_called_with(params,{22: "720p"})