]> gitweb.michael.orlitzky.com - dead/whatever-dl.git/commitdiff
Added two new Youtube tests for the available/desired video formats.
authorMichael Orlitzky <michael@orlitzky.com>
Thu, 14 Jan 2010 04:13:43 +0000 (23:13 -0500)
committerMichael Orlitzky <michael@orlitzky.com>
Thu, 14 Jan 2010 04:13:43 +0000 (23:13 -0500)
test/youtube_test.rb

index fa61cb27feb12087e676318cb37cc6f497705c9a..ec91d357112a2c1b6e24e6cbd41bb15653d4a16f 100644 (file)
@@ -95,6 +95,45 @@ class YoutubeTest < Test::Unit::TestCase
   end
 
 
+  def test_get_available_formats
+    # Make sure that we can parse the available formats from a page.
+    yt = Youtube.new(nil)
+
+    page_data = nil
+
+    File.open('test/fixtures/youtube/BUer8Dv2HW8.html') do |f|
+      page_data = f.read
+    end
+
+    actual_formats = yt.send('get_available_formats', page_data)
+    expected_formats = [ 37, 22, 35, 18, 34, 5 ]
+    
+    # Make sure that all of the elements of the "expected" set are in
+    # the "actual" set and vice-versa.
+    assert_equal([], expected_formats - actual_formats)
+    assert_equal([], actual_formats - expected_formats)
+  end
+
+
+  def test_get_desired_format
+    # The get_desired_format() method should choose the best of the
+    # available formats.
+    yt = Youtube.new(nil)
+
+    page_data = nil
+
+    File.open('test/fixtures/youtube/BUer8Dv2HW8.html') do |f|
+      page_data = f.read
+    end
+
+    available_formats = yt.send('get_available_formats', page_data)
+    actual_result = yt.send('get_desired_format', available_formats)
+    expected_result = 37
+
+    assert_equal(expected_result, actual_result)
+  end
+
+
   def test_get_video_filename
     yt = Youtube.new('http://www.youtube.com/watch?v=SudixyugiX4')
     expected_result = 'SudixyugiX4.flv'