def test_itag_from_quality_num_but_not_available(itag, video_itags): ''' Test that we raise ValueError if explicitly requesting an unavailable itag. ''' assume(itag not in video_itags) with assert_raises(ValueError): yturl.itag_from_quality(itag, video_itags)
def test_quality_group_parsing(): eq(yturl.itag_from_quality(18), 18) eq(yturl.ITAGS_BY_QUALITY.index(yturl.itag_from_quality("high")), 0) eq( yturl.ITAGS_BY_QUALITY.index(yturl.itag_from_quality("medium")), len(yturl.ITAGS_BY_QUALITY) // 2, ) eq( yturl.ITAGS_BY_QUALITY.index(yturl.itag_from_quality("low")), len(yturl.ITAGS_BY_QUALITY) - 1, )
def test_itag_from_quality_string(): eq(yturl.itag_from_quality('high'), 38)
def test_itag_from_quality_num_but_not_itag(itag): assume(itag not in yturl.ITAGS_BY_QUALITY) with assert_raises(yturl.UnknownQualityError): yturl.itag_from_quality(itag)
def test_itag_from_quality_itag(itag): eq(yturl.itag_from_quality(itag), itag)
def itag_quality_pos(itag_quality): ''' Return the position of an itag quality in ITAGS_BY_QUALITY, in order to check that index constraints hold. See test_itag_from_quality. ''' return yturl.ITAGS_BY_QUALITY.index(yturl.itag_from_quality(itag_quality))
def test_quality_group_parsing(): eq_(yturl.itag_from_quality("18"), "18") eq_(yturl.itags_by_quality.index(yturl.itag_from_quality("high")), 0) eq_(yturl.itags_by_quality.index(yturl.itag_from_quality("medium")), len(yturl.itags_by_quality) // 2) eq_(yturl.itags_by_quality.index(yturl.itag_from_quality("low")), len(yturl.itags_by_quality) - 1)
def get_index(quality_group): return itags.index(yturl.itag_from_quality(quality_group, itags))
def test_itag_from_quality_itag_pass_through(itag): ''' Test that, when passed to itag_from_quality, itags are returned unaffected. ''' eq(yturl.itag_from_quality(itag, [itag]), itag)