aboutsummaryrefslogtreecommitdiffhomepage
path: root/test
AgeCommit message (Collapse)Author
2024-05-30[InfoExtractor] Misc yt-dlp back-ports, etcdirkf
* add _yes_playlist() method * avoid crash using _NETRC_MACHINE * use _search_json() in _search_nextjs_data() * _search_nextjs_data() default is JSON, not text * test for above
2024-05-30[utils] Split out traversal.py dummy and traversal testsdirkf
2024-05-30[utils] Update traverse_obj() from yt-dlpdirkf
* remove `is_user_input` option per https://github.com/yt-dlp/yt-dlp/pull/8673 * support traversal of compat_xml_etree_ElementTree_Element per https://github.com/yt-dlp/yt-dlp/pull/8911 * allow un/branching using all and any per https://github.com/yt-dlp/yt-dlp/pull/9571 * support traversal of compat_cookies.Morsel and multiple types in `set()` keys per https://github.com/yt-dlp/yt-dlp/pull/9577 thx Grub4k for these * also, move traversal tests to a separate class * allow for unordered dicts in tests for Py<3.7
2024-04-22[test/test_download] Support 'playlist_maxcount:count' expected valuedirkf
* parallel to `playlist_mincount' * specify both for a range of playlist lengths * if max < min the test will always fail!
2024-03-27[external/FFmpeg] Fix and improve --ffmpeg-location handlingdirkf
* pass YoutubeDL (FileDownloader) to FFmpegPostProcessor constructor * consolidate path search in FFmpegPostProcessor * make availability of FFmpegFD depend on existence of FFmpegPostProcessor * detect ffmpeg executable on instantiation of FFmpegFD * resolves #32735
2024-03-08[utils] Let int_or_none() accept a base, like int()dirkf
2024-03-04[utils] Handle user:pass in URLs (#28801)Hubert Hirtz
* Handle user:pass in URLs Fixes "nonnumeric port" errors when youtube-dl is given URLs with usernames and passwords such as: http://username:[email protected]/myvideo.mp4 Refs: - https://en.wikipedia.org/wiki/Basic_access_authentication - https://tools.ietf.org/html/rfc1738#section-3.1 - https://docs.python.org/3.8/library/urllib.parse.html#urllib.parse.urlsplit Fixes #18276 (point 4) Fixes #20258 Fixes #26211 (see comment) * Align code with yt-dlp --------- Co-authored-by: dirkf <[email protected]>
2024-02-02[InfoExtractor] Support byte range for DASHdirkf
* adapted from https://github.com/ytdl-org/youtube-dl/pull/30279 * thx former GH user kikuyan
2024-02-02[InfoExtractor] Support DASH subtitle extraction (yt-dlp back-port)dirkf
2024-01-22[YouTube] Fix `like_count` extraction using `likeButtonViewModel`dirkf
* also fix various tests * TODO: check against yt-dlp tests
2024-01-22[compat] Rework compat for `method` parameter of ↵dirkf
`compat_urllib_request.Request` constructor * fixes #32573 * does not break `utils.HEADrequest` (eg)
2023-09-03[utils] Revert bbd3e7e, updating docstring, test insteaddirkf
2023-09-03[test] Remove redundancy from lambda expected value regexdirkf
2023-07-29[utils] Rework URL path munging for ., .. componentsdirkf
* move processing to YoutubeDLHandler * also process `Location` header for redirect * use tests from https://github.com/yt-dlp/yt-dlp/pull/7662
2023-07-29[utils] Rework decoding of `Content-Encoding`sdirkf
* support nested encodings * support optional `br` encoding, if brotli package is installed * support optional 'compress' encoding, if ncompress package is installed * response `Content-Encoding` has only unprocessed encodings, or removed * response `Content-Length` is decoded length (usable for filesize metadata) * use zlib for both deflate and gzip decompression * some elements taken from yt-dlp: thx especially coletdjnz
2023-07-25[compat] Use `compat_open()`dirkf
2023-07-25[build] Add and use `devscripts/utils`dirkf
2023-07-25[utils] Fix update_Request() with empty data (not None)dirkf
2023-07-25[test/test_execution.py] Use `compat_subprocess_get_DEVNULL()`dirkf
2023-07-25[build] Fix various Jython CI and test issuesdirkf
2023-07-19[InfoExtractor] Add search methods for Next/Nuxt.js from yt-dlpdirkf
* add _search_nextjs_data(), from https://github.com/yt-dlp/yt-dlp/pull/1386 thanks selfisekai * add _search_nuxt_data(), from https://github.com/yt-dlp/yt-dlp/pull/1921, thanks Lesmiscore, pukkandan * add tests for the above * also fix HTML5 type recognition and tests, from https://github.com/yt-dlp/yt-dlp/commit/222a230871fe4fe63f35c49590379c9a77116819, thanks Lesmiscore * update extractors in PR using above, fix tests.
2023-07-19[utils] Improve js_to_json, align with yt-dlpdirkf
* support variable substitution, from https://github.com/yt-dlp/yt-dlp/pull/#521 etc, thanks ChillingPepper, Grub4k, pukkandan * improve escape handling, from https://github.com/yt-dlp/yt-dlp/pull/#521 thanks Grub4k * support template strings from https://github.com/yt-dlp/yt-dlp/pull/6623 thanks Grub4k * add limited `!` evaluation (eg, !!0 -> false, see tests)
2023-07-19[utils] Align traverse_obj() with yt-dlpdirkf
Thanks Grub4k for these: * traverse `Iterable`s, from https://github.com/yt-dlp/yt-dlp/pull/6902, etc * traverse `set` key for transformations/filters, `re.Match` group names, from https://github.com/yt-dlp/yt-dlp/commit/776995bc109c5cd1aa56b684fada2ce718a386ec, etc * traverse `re.Match`es, from https://github.com/yt-dlp/yt-dlp/pull/5174 * always return list when branching, from https://github.com/yt-dlp/yt-dlp/pull/5170
2023-07-18[test] Fixes for old Pythonsdirkf
2023-07-18[downloader/external] Fix cookie supportbashonly
2023-07-18[core] Process header cookies on loadingSimon Sawicki
2023-07-18[core] Remove `Cookie` header on redirect to prevent leaksdirkf
Adated from yt-dlp/yt-dlp-ghsa-v8mc-9377-rwjj/pull/1/commits/101caac Thx coletdjnz
2023-07-18[core] Update redirect handling from yt-dlpdirkf
* Thx coletdjnz: https://github.com/yt-dlp/yt-dlp/pull/7094 * add test that redirected `POST` loses its `Content-Type`
2023-07-18[test] Make skipped tests in test_execution work with Py 2.6dirkf
2023-07-18[core] Align error reporting methods with yt-dlpdirkf
2023-07-18[utils] Add {expected_type} and Iterable support to traverse_obj()dirkf
2023-07-05[Misc] Fixes for 2.6 compatibilitydirkf
2023-07-05[workflows/ci.yml] Fix test support for Py 2.6dirkf
2023-07-05[workflows/ci.yml] Restore test support for Py 3.2dirkf
2023-06-22[YouTube] Improve nsig function name extractionpukkandan
Fixes player b7910ca8, using `,` vs `;` See https://github.com/ytdl-org/youtube-dl/issues/32292#issuecomment-1602231170 Co-authored-by: dirkf
2023-06-17[YouTube] Fix `KeyError QV` in signature extraction faileddirkf
* temporarily force missing global definition into sig JS * improve test: thanks https://github.com/yt-dlp/yt-dlp/issues/7327#issuecomment-1595274615 * resolves #32314
2023-06-11[jsinterp] Fix div bug breaking player 8c7583ffdirkf
Thx bashonly: https://github.com/ytdl-org/youtube-dl/issues/32292#issuecomment-1585639223 Fixes #32292
2023-05-23[jsinterp] Small updates for a85a875dirkf
* update signature tests * clarify NaN handling
2023-05-11[jsinterp] Handle NaN in bitwise operatorsdirkf
* also add _NaN * also pull function naming from yt-dlp
2023-04-21[jsinterp] Minimally handle arithmetic operator precedencedirkf
Resolves #32066
2023-03-19[utils] Ensure `allow_types` for `variadic()` is a tupledirkf
2023-03-19[downloader/http] Only check for resumability when actually resumingdirkf
2023-03-07[jsinterp] Fix regexp parsing and .replace[All] methoddirkf
* For performance, make regexp object instantiation lazy * Other small performance improvements
2023-03-03[jsinterp] Handle `Date` at epoch 0pukkandan
See yt-dlp/yt_dlp#6400
2023-02-24[test] Support test-case with volatile ID (eg live show)dirkf
Signalled by regexp ID value, eg: `'id': r're:[\da-zA-Z_-]{8,}'`
2023-02-20Escape URLs in `sanitized_Request`, not `sanitize_url` ↵pukkandan
d2558234cf5dd12d6896eed5427b7dcdb3ab7b5a added escaping of URLs while sanitizing. However, `sanitize_url` may not always receive an actual URL. Eg: When using `youtube-dl "search query" --default-search ytsearch`, `search query` gets escaped to `search%20query` before being prefixed with `ytsearch:` which is not the intended behavior. So the escaping is moved to `sanitized_Request` instead.
2023-02-14[test] Avoid name TestIE which causes a pytest warningdirkf
See: https://github.com/yt-dlp/yt-dlp/commit/060ac76257a8c1f7370a8a571821c1d73377701f
2023-02-14[InfoExtractor] Handle unquoted values in OpenGraph searchesdirkf
2023-02-13[feat]: Add support to external downloader aria2p (#31500)teddy171
* feat: add class Aria2pFD * feat: create call_downloader function * feat: a colorful download interface to aria2pFD * feat: change value name * Apply suggestions from code review Co-authored-by: dirkf <[email protected]> * Typo in suggestion * fix: remove unused value * fix: add not function to return value(0 is normal); add total_seconds to download.eta(timedelta object); add waiting status when hook progress * fix: remove unuse method ..utils.format_bytes * fix: be up to flake8 * fix: be up to flake8 * Apply suggestions from code review * [feat] test external downloader aria2p * [feat] test external downloader aria2p * [fix] test_external_downloader.py * Apply suggestions from code review Co-authored-by: dirkf <[email protected]> * Apply suggestions from code review Co-authored-by: dirkf <[email protected]> * Update test/test_external_downloader.py Co-authored-by: dirkf <[email protected]> * Update test/test_external_downloader.py Co-authored-by: dirkf <[email protected]> * Update youtube_dl/downloader/external.py Co-authored-by: dirkf <[email protected]> * refactoring code and fix bugs * Apply suggestions from code review * Rename test_external_downloader.py to test_downloader_external.py --------- Co-authored-by: dirkf <[email protected]>
2023-02-13[YouTube] Refresh compat/utils usagedirkf
* import parse_qs() * import parse_qs in lazy_extractors (clears old TODO) * clean up old compiled lazy_extractors for Py2 * use update_url()