aboutsummaryrefslogtreecommitdiff
path: root/test
AgeCommit message (Collapse)Author
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 <fieldhouse@gmx.net> * 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 <fieldhouse@gmx.net> * Apply suggestions from code review Co-authored-by: dirkf <fieldhouse@gmx.net> * Update test/test_external_downloader.py Co-authored-by: dirkf <fieldhouse@gmx.net> * Update test/test_external_downloader.py Co-authored-by: dirkf <fieldhouse@gmx.net> * Update youtube_dl/downloader/external.py Co-authored-by: dirkf <fieldhouse@gmx.net> * refactoring code and fix bugs * Apply suggestions from code review * Rename test_external_downloader.py to test_downloader_external.py --------- Co-authored-by: dirkf <fieldhouse@gmx.net>
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()
2023-02-13[compat] Update test_compatdirkf
[skip ci]
2023-02-13[compat] Systematise compat_ namingdirkf
[skip ci]
2023-02-13[test] Fix TestAgeRestrictiondirkf
* age restriction may cause DownloadError * update obsolete test URLs [skip ci]
2023-02-02[jsinterp] Improve parsingdirkf
* support subset `... else if ...` * support `while` * add `RegExp` class * generalise `new` support * limited more debug strings * matching test changes
2023-02-02Support `if` statementspukkandan
Fix for yt-dlp/yt_dlp#6131 Closes #31509
2022-11-03[utils] Backport traverse_obj (etc) from yt-dlp (#31156)Andrei Lebedev
* Backport traverse_obj and closely related function from yt-dlp (code by pukkandan) * Backport LazyList, variadic(), try_call (code by pukkandan) * Recast using yt-dlp's newer traverse_obj() implementation and tests (code by grub4k) * Add tests for Unicode case folding support matching Py3.5+ (requires f102e3d) * Improve/add tests for variadic, try_call, join_nonempty Co-authored-by: dirkf <fieldhouse@gmx.net>
2022-11-01[compat] Add test for compat_casefold()dirkf
2022-11-01[compat] Add test for compat_casefold()dirkf
2022-10-11[netease] Get netease music download url through player api (#31235)Xie Yanbo
* remove unplayable song from test * compatible with python 2 * using standard User_Agent, fix imports * use hash instead of long description * fix lint * fix hash
2022-10-11[test] Implement string "lambda x: condition(x)" as an expected valuedirkf
Semantics equivalent to `assert condition(got)`
2022-09-03[jsinterp] Workaround operator associativity issuepukkandan
* temporary fix for player 5a3b6271 [1] 1. https://github.com/yt-dlp/yt-dlp/issues/4635#issuecomment-1235384480
2022-09-01[cache] Add cache validation by program version, based on yt-dlpdirkf
2022-09-01[jsinterp] Handle new YT players 113ca41c, c57c113cdirkf
* add NaN * allow any white-space character for `after_op` * align with yt-dlp f26af78a8ac11d9d617ed31ea5282cfaa5bcbcfa (charcodeAt and bitwise overflow) * allow escaping in regex, fixing player c57c113c
2022-08-26[jsinterp] Improve try/catch/finally supportdirkf
2022-08-25[jsinterp] Fix bug in operator precedencedirkf
* from https://github.com/yt-dlp/yt-dlp/commit/164b03c4864b0d44cfee5e7702f7c2317164a6cf * added tests
2022-08-19[jsinterp] Clean up and pull yt-dlp styledirkf
* add compat_re_Pattern * improve compat_collections_chain_map * use class JS_Undefined * remove unused code
2022-08-19[jsinterp] Handle regexp literals and throw/catch execution (#31182)dirkf
* based on https://github.com/yt-dlp/yt-dlp/commit/f6ca640b122239d5ab215f8c2564efb7ac3e8c65, thanks pukkandan * adds parse support for regexp flags
2022-08-17[jsinterp] Improve JS language support (#31175)dirkf
* operator ?? * operator ?. * operator ** * accurate operator functions * `undefined` handling * object literals {a: 1, "b": expr} * more tests for weird JS comparisons: see https://github.com/ytdl-org/youtube-dl/issues/31173#issuecomment-1217854397.
2022-08-14[jsinterp] Overhaul JSInterp to handle new YT players 4c3f79c5, 324f67b9 ↵dirkf
(#31170) * back-port from yt-dlp 8f53dc44a0cc1c2d98c35740b9293462c080f5d0, thanks pukkandan * also support void, improve <</>> precedence, improve expressions in comma-list * add more tests
2022-08-09[test, etc] Improve download test logs; also clean up some new flake8 issues ↵dirkf
(#31153) * [test] Identify testcase errors better * [test] Identify download errors better * [extractor/minds] Linter * [extractor/aes] Linter
2022-06-15[test] Fix linter for 3aa94d7945dfaa0e04acf2700ffe0e43b00db498dirkf