# # 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