X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=test%2Fyoutube_test.rb;fp=test%2Fyoutube_test.rb;h=08e8030e8b8686a5898ce735f5d6d50c6b3e1530;hb=af614c64b3d5998471af5e54b3d8f36d3e00cc63;hp=0000000000000000000000000000000000000000;hpb=9390083b114048a6782454a37f799733707ee5dc;p=dead%2Fwhatever-dl.git diff --git a/test/youtube_test.rb b/test/youtube_test.rb new file mode 100644 index 0000000..08e8030 --- /dev/null +++ b/test/youtube_test.rb @@ -0,0 +1,64 @@ +# +# 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 'src/websites/youtube' + +class YoutubeTest < Test::Unit::TestCase + + def test_owns_youtube_urls + assert(Youtube.owns_url?('http://www.youtube.com/watch?v=SudixyugiX4')) + assert(Youtube.owns_url?('http://www.youtube.com/watch?v=SudixyugiX4&hl=en')) + assert(Youtube.owns_url?('http://youtube.com/watch?v=SudixyugiX4&hl=en')) + assert(Youtube.owns_url?('http://www.youtube.com/v/SudixyugiX4')) + assert(Youtube.owns_url?('http://www.youtube.com/v/SudixyugiX4&hl=en')) + assert(Youtube.owns_url?('http://youtube.com/v/SudixyugiX4&hl=en')) + end + + + def test_doesnt_own_redtube_urls + assert(!Youtube.owns_url?('http://www.redtube.com/6807')) + assert(!Youtube.owns_url?('www.redtube.com/6807')) + assert(!Youtube.owns_url?('http://redtube.com/6807')) + assert(!Youtube.owns_url?('redtube.com/6807')) + end + + + def test_parse_video_id + yt = Youtube.new() + expected_result = 'SudixyugiX4' + actual_result = yt.send('parse_video_id', 'http://www.youtube.com/watch?v=SudixyugiX4') + assert_equal(expected_result, actual_result) + end + + + def test_parse_t_parameter + yt = Youtube.new() + + page_data = nil + + File.open('test/fixtures/youtube/SudixyugiX4.html') do |f| + page_data = f.read + end + + expected_result = 'OEgsToPDskLQUAntWWpzhEMhBMlgqHdo' + actual_result = yt.send('parse_t_parameter', page_data) + assert_equal(expected_result, actual_result) + end + +end