# # Copyright Michael Orlitzky # # http://michael.orlitzky.com/ # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # http://www.fsf.org/licensing/licenses/gpl.html # require 'test/unit' require 'whatever-dl/websites/veoh' class VeohTest < Test::Unit::TestCase def test_parse_video_id v = Veoh.new('http://www.veoh.com/videos/v801204yMZ8BWcC') video_id = v.send('parse_video_id') assert_equal('v801204yMZ8BWcC', video_id) end def test_parse_second_video_id v = Veoh.new('http://www.veoh.com/videos/v15795090Z6mZAbSq') video_id = v.send('parse_video_id') assert_equal('v15795090Z6mZAbSq', video_id) end def test_parse_third_video_id v = Veoh.new('http://www.veoh.com/group/suggested-anime-w1st-episodes/?source=homepageList#watch%3Dv19961527w773Qq5G') video_id = v.send('parse_video_id') assert_equal('v19961527w773Qq5G', video_id) end def test_parse_fourth_video_id v = Veoh.new('http://www.veoh.com/browse/videos/category/anime/watch/v19568793XZq2SRzZ') video_id = v.send('parse_video_id') assert_equal('v19568793XZq2SRzZ', video_id) end def test_parse_fifth_video_id v = Veoh.new('http://www.veoh.com/collection/Keith-Anderson-Music-Videos/watch/v13890200h98YShYN') video_id = v.send('parse_video_id') assert_equal('v13890200h98YShYN', video_id) end def test_parse_redirect_url v = Veoh.new(nil) details_data = nil File.open('test/fixtures/veoh/details_data-v801204yMZ8BWcC.xml') do |f| details_data = f.read end actual_result = v.send('parse_redirect_url', details_data) expected_result = 'http://content.veoh.com/flash/p/801204/7b55b0e3fef09c5599ba2ab3d6a270c3dc9c0a0d.flv?ct=8c18f78c97a2df5cb5f7d849dce97c28996b0835dfc71ce9' assert_equal(expected_result, actual_result) end def test_second_parse_redirect_url v = Veoh.new(nil) details_data = nil File.open('test/fixtures/veoh/details_data-v15795090Z6mZAbSq.xml') do |f| details_data = f.read end actual_result = v.send('parse_redirect_url', details_data) expected_result = 'http://content.veoh.com/flash/f/2/v15795090Z6mZAbSq/3f8044ce2538155c55af5c036cd96ba82a83ddb5.flv?ct=ff4914d2e699e8ad04a69102faaab6ce82b7704998890f69' assert_equal(expected_result, actual_result) end def test_owns_veoh_urls assert(Veoh.owns_url?('http://www.veoh.com/videos/v801204yMZ8BWcC')) assert(Veoh.owns_url?('http://www.veoh.com/videos/v15795090Z6mZAbSq')) assert(Veoh.owns_url?('http://www.veoh.com/group/suggested-anime-w1st-episodes/?source=homepageList#watch%3Dv19961527w773Qq5G')) assert(Veoh.owns_url?('http://www.veoh.com/browse/videos/category/anime/watch/v19568793XZq2SRzZ')) assert(Veoh.owns_url?('http://www.veoh.com/collection/Keith-Anderson-Music-Videos/watch/v13890200h98YShYN')) end end