2 # Copyright Michael Orlitzky
4 # http://michael.orlitzky.com/
6 # This program is free software: you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation, either version 3 of the License, or
9 # (at your option) any later version.
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
16 # http://www.fsf.org/licensing/licenses/gpl.html
20 require 'src/websites/redtube'
22 # Unit tests for the Redtube class. Basically just checking
23 # the results of get_video_url for known ids.
25 class RedtubeTest
< Test
::Unit::TestCase
27 def test_owns_redtube_urls
28 assert(Redtube
.owns_url
?('http://www.redtube.com/6807'))
29 assert(Redtube
.owns_url
?('www.redtube.com/6807'))
30 assert(Redtube
.owns_url
?('http://redtube.com/6807'))
31 assert(Redtube
.owns_url
?('redtube.com/6807'))
35 def test_doesnt_own_howcast_urls
36 assert(!Redtube
.owns_url
?('http://www.howcast.com/6807'))
37 assert(!Redtube
.owns_url
?('www.howcast.com/6807'))
38 assert(!Redtube
.owns_url
?('http://howcast.com/6807'))
39 assert(!Redtube
.owns_url
?('howcast.com/6807'))
43 def test_doesnt_own_misc_urls
44 assert(!Redtube
.owns_url
?('http://redtube/123'))
45 assert(!Redtube
.owns_url
?('www.redtube.com/abc'))
49 def test_get_video_filename
50 rt
= Redtube
.new('http://www.redtube.com/6807')
51 # I don't know where they get these filenames from, but whatever.
52 expected_result
= 'X57OBH08G.flv'
53 actual_result
= rt
.get_video_filename()
54 assert_equal(expected_result
, actual_result
)
59 def test_parse_hash_flv
64 File
.open('test/fixtures/redtube/6807.html') do |f
|
68 test_result
= rt
.send('parse_hash_flv', page_data
)
69 assert_equal('/be03bc2d810017a8689d96c61a626303/4ac6529f', test_result
)