You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
depot_tools/tests
Bruce Dawson 09c0c073ea Optimize presubmit --all with --no_diffs option
Some of the expensive checks when running presubmit --all, such as
CheckStableMojomChanges (~300 s) and CheckAddedDepsHaveTargetApprovals
(~200 s) only look at diffs and are therefore guaranteed to be NOPs when
running presubmit --all or --files=. Passing along the no_diffs state
lets these expensive checks be skipped, thus allowing for faster
iteration times.

Initial testing suggests that (with some supporting changes in the
Chromium repo) this reduces "presubmit --all" times by about ten
minutes, or a bit more than 10%, and additional improvements may be
possible.

Special handling for the no-diffs case also offers a simple way to avoid
presubmit failures that happen whenever all files are flagged as being
changed.

Finally, and perhaps most importantly for having a presubmit --all bot,
when --no_diffs is passed we can treat errors like "Issue wasn't
uploaded" and "Add a description to the CL" as messages, thus making it
possible to have zero presubmit errors when run on origin/main.

Bug: 1320937, 1322936
Change-Id: I0d09dd4aae8fdaa48c8b2f89337441cf96dcff72
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3628368
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Gavin Mak <gavinmak@google.com>
3 years ago
..
gstools
OWNERS autoninja: add simple test 3 years ago
PRESUBMIT.py Follow-up to 61bf638 to add the py3-specific PRESUBMIT.py test. 4 years ago
auth_test.py
autoninja_test.py autoninja: add simple test 3 years ago
bot_update_coverage_test.py Use pylint 2.7 for depot_tools 3 years ago
cipd_bootstrap_test.py
detect_host_arch_test.py gclient: Correctly set host_cpu to arm64 on arm macs 4 years ago
download_from_google_storage_unittest.py Skip 'ls' when downloading from gs. 3 years ago
fetch_test.py Add --protocol-override to fetch.py 3 years ago
fix_encoding_test.py Make fix_encoding_test py3 compatible 4 years ago
gclient_cipd_smoketest.py
gclient_eval_unittest.py metrics: Don't print notice if reporting build metrics. 4 years ago
gclient_git_mutates_smoketest.py gclient: Split gclient smoke tests. 4 years ago
gclient_git_smoketest.py Use main branch as the default branch 4 years ago
gclient_paths_test.py
gclient_scm_test.py Fix host and repo parsing for download-topics 3 years ago
gclient_smoketest.py
gclient_smoketest_base.py Use pylint 2.7 for depot_tools 3 years ago
gclient_test.py Revert "Remove unused functionality in bot_update.py" 3 years ago
gclient_transitions_smoketest.py
gclient_utils_test.py update stale codereview.chromium.org links 4 years ago
gerrit_client_test.py Add a 'setlabel' command to gerrit_client.py 4 years ago
gerrit_util_test.py Handle spaces in Gerrit search options 4 years ago
git_cache_test.py add support for main in git_cache 5 years ago
git_cl_creds_check_report.txt git cl: remove check for likely wrong identities. 5 years ago
git_cl_test.py Optimize presubmit --all with --no_diffs option 3 years ago
git_common_test.py Fix git_common_test.py: git checkout -tb -> git checkout -t -b 3 years ago
git_dates_test.py
git_find_releases_test.py Use pylint 2.7 for depot_tools 3 years ago
git_footers_test.py Use main branch as the default branch 4 years ago
git_hyper_blame_test.py
git_map_test.py Use main branch as the default branch 4 years ago
git_migrate_default_branch_test.py Use pylint 2.7 for depot_tools 3 years ago
git_number_test.py
git_rebase_update_test.py Fix depot_tools tests when running without py2 3 years ago
gsutil_test.py Refactor gsutil and fix concurrecny issue on MacOS 4 years ago
lockfile_test.py
metrics_test.py Use main branch as the default branch 4 years ago
my_activity_test.py Require certifi package and python3 in my_activity 4 years ago
ninjalog_uploader_test.py fix ninjalog_uploader.py 3 years ago
owners_client_test.py Reland "presubmit: Skip owners checks if code-owners plugin is enabled." 4 years ago
owners_finder_test.py owners_finder: Use code-owners plugin if available. 4 years ago
owners_unittest.py
presubmit_unittest.py Optimize presubmit --all with --no_diffs option 3 years ago
rdb_wrapper_test.py [resultdb] use requests.Session in rdb_wrapper 5 years ago
recipes_test.py add vpython3 to tests that run under vpython3 4 years ago
roll_dep_test.py
scm_unittest.py Refresh remote HEAD if matches legacy default 4 years ago
split_cl_test.py Update format of `git cl split` 4 years ago
subcommand_test.py
subprocess2_test.py Use pylint 2.7 for depot_tools 3 years ago
upload_to_google_storage_unittest.py Set cache-control when uploading to google storage 4 years ago
utils_test.py Add a basic depot_tools version information 3 years ago
watchlists_unittest.py