New issue
Advanced search Search tips

Issue 789079 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Task



Sign in to add a comment

Refine base::Clock and base::TickClock ownership

Project Member Reported by tzik@chromium.org, Nov 28 2017

Issue description

base::Clock and base::TickClock are injection points for testing to override base::Time::Now() and base::TimeTicks::Now().
In common usage in Chromium:
 - An injection class takes the ownership of the clock object, and
   use it whenever Now() is needed.
 - An owner of the injection target creates a base::DefaultClock or
   base::DefaultTickClock instance, and passes it to the target
   on the production code.
 - A test class creates a SimpleTestClock or SimpleTestTickClock,
   keeps an raw pointer in the test class, and passes the instance
   to the injection target.

The problems here are:
 - One clock instance per injection target is sometimes excessive.
   Especially when the injection target is small. Even if the injection
   targets share single clock instance, the right owner of the shared
   instance may not always exist.
 - A test holds raw pointer to an injected clock instance to manipulate
   the clock for testing, but the ownership itself is passed to the
   target. That looks hacky.

This ownership structure can be rewritten more cleaner way if
 - The injection target always takes a raw pointer to the clock instance.
 - In production code, the target takes a shared singleton instance of
   base::DefaultClock or base::DefaultTickClock.
 - In test code, the test class owns a SimpleTestClock or SimpleTestTickClock,
   and passes a raw pointer to the target, rather than the ownership.

 

Comment 1 by tzik@chromium.org, Nov 28 2017

Cc: peria@chromium.org tzik@chromium.org
Status: Available (was: Untriaged)
Here is a draft CL: http://crrev.com/c/790271

Comment 2 by tzik@chromium.org, Nov 28 2017

Cc: dcheng@chromium.org
Project Member

Comment 3 by bugdroid1@chromium.org, Nov 28 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ba055bf352ba246ab36e20ff9c5a40f0939563c3

commit ba055bf352ba246ab36e20ff9c5a40f0939563c3
Author: tzik <tzik@chromium.org>
Date: Tue Nov 28 10:48:08 2017

Use the shared instance of DefaultTickClock in Blink bindings

As a preparation to make base::DefaultTickClock a singleton. This CL
removes a local DefaultTickClock instance from Blink bindings code.

Bug: 789079
Change-Id: Ie3d917804b715ca2fc38d8b3ed9c35c07008af9c
Reviewed-on: https://chromium-review.googlesource.com/792557
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
Reviewed-by: Hitoshi Yoshida <peria@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#519645}
[modify] https://crrev.com/ba055bf352ba246ab36e20ff9c5a40f0939563c3/third_party/WebKit/Source/platform/bindings/RuntimeCallStats.cpp
[modify] https://crrev.com/ba055bf352ba246ab36e20ff9c5a40f0939563c3/third_party/WebKit/Source/platform/bindings/V8PerIsolateData.cpp
[modify] https://crrev.com/ba055bf352ba246ab36e20ff9c5a40f0939563c3/third_party/WebKit/Source/platform/bindings/V8PerIsolateData.h

Project Member

Comment 4 by bugdroid1@chromium.org, Nov 29 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/67025f67e9bfe35a583e843db1f447c24db5c5fe

commit 67025f67e9bfe35a583e843db1f447c24db5c5fe
Author: tzik <tzik@chromium.org>
Date: Wed Nov 29 05:04:44 2017

Use the shared instance of base::Default{,Tick}Clock in //content

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership complex.

After this CL, the clock instances are always un-owned by injectees.
Instead, an injecter owned one is used on testing, and the shared
instance is used on production path.

Bug: 789079
Change-Id: Ibdcb6600c0ccaf212ab36c02d57f81bc492db989
Reviewed-on: https://chromium-review.googlesource.com/792693
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Martin Šrámek <msramek@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#520010}
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate_unittest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/background_sync/background_sync_manager.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/background_sync/background_sync_manager.h
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/background_sync/background_sync_manager_unittest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/host_zoom_map_impl.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/host_zoom_map_impl.h
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/host_zoom_map_impl_unittest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/indexed_db/indexed_db_backing_store_unittest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/indexed_db/indexed_db_context_impl.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/indexed_db/indexed_db_factory_impl.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/indexed_db/indexed_db_factory_impl.h
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/indexed_db/indexed_db_factory_unittest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/media/audible_metrics.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/media/audible_metrics.h
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/media/audible_metrics_unittest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/media/audio_stream_monitor.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/media/audio_stream_monitor.h
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/media/capture/cursor_renderer.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/media/capture/cursor_renderer.h
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/media/session/media_session_impl_browsertest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/media/session/media_session_uma_helper.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/media/session/media_session_uma_helper.h
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/media/session/media_session_uma_helper_unittest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/memory/memory_coordinator_impl.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/memory/memory_coordinator_impl.h
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/memory/memory_coordinator_impl_unittest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/renderer_host/delegated_frame_host.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/renderer_host/delegated_frame_host.h
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/renderer_host/render_widget_host_view_aura_unittest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/service_worker/foreign_fetch_request_handler_unittest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/service_worker/service_worker_lifetime_tracker.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/service_worker/service_worker_lifetime_tracker.h
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/service_worker/service_worker_lifetime_tracker_unittest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/service_worker/service_worker_registration_unittest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/service_worker/service_worker_url_request_job_unittest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/service_worker/service_worker_version.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/service_worker/service_worker_version.h
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/browser/service_worker/service_worker_version_unittest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/public/browser/host_zoom_map.h
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/renderer/media/render_media_log.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/renderer/media/render_media_log.h
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/renderer/media/render_media_log_unittest.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/renderer/media/renderer_webmediaplayer_delegate.cc
[modify] https://crrev.com/67025f67e9bfe35a583e843db1f447c24db5c5fe/content/renderer/media/renderer_webmediaplayer_delegate.h

Project Member

Comment 5 by bugdroid1@chromium.org, Nov 29 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9e37feaaf0077075fda82ccb4ad810b64d43b4e6

commit 9e37feaaf0077075fda82ccb4ad810b64d43b4e6
Author: tzik <tzik@chromium.org>
Date: Wed Nov 29 20:56:15 2017

Use the shared instance of base::Default{,Tick}Clock in //components/cryptauth

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership complex.

After this CL, the clock instances are always un-owned by injectees.
Instead, an injecter owned one is used on testing, and the shared
instance is used on production path.

Bug: 789079
Change-Id: Iff3360eb8b4d08934882cd84afc8d4d0626b456e
Reviewed-on: https://chromium-review.googlesource.com/795403
Reviewed-by: Kyle Horimoto <khorimoto@chromium.org>
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#520234}
[modify] https://crrev.com/9e37feaaf0077075fda82ccb4ad810b64d43b4e6/chrome/browser/cryptauth/chrome_cryptauth_service.cc
[modify] https://crrev.com/9e37feaaf0077075fda82ccb4ad810b64d43b4e6/components/cryptauth/background_eid_generator.cc
[modify] https://crrev.com/9e37feaaf0077075fda82ccb4ad810b64d43b4e6/components/cryptauth/background_eid_generator.h
[modify] https://crrev.com/9e37feaaf0077075fda82ccb4ad810b64d43b4e6/components/cryptauth/background_eid_generator_unittest.cc
[modify] https://crrev.com/9e37feaaf0077075fda82ccb4ad810b64d43b4e6/components/cryptauth/cryptauth_device_manager.cc
[modify] https://crrev.com/9e37feaaf0077075fda82ccb4ad810b64d43b4e6/components/cryptauth/cryptauth_device_manager.h
[modify] https://crrev.com/9e37feaaf0077075fda82ccb4ad810b64d43b4e6/components/cryptauth/cryptauth_device_manager_unittest.cc
[modify] https://crrev.com/9e37feaaf0077075fda82ccb4ad810b64d43b4e6/components/cryptauth/cryptauth_enrollment_manager.cc
[modify] https://crrev.com/9e37feaaf0077075fda82ccb4ad810b64d43b4e6/components/cryptauth/cryptauth_enrollment_manager.h
[modify] https://crrev.com/9e37feaaf0077075fda82ccb4ad810b64d43b4e6/components/cryptauth/cryptauth_enrollment_manager_unittest.cc
[modify] https://crrev.com/9e37feaaf0077075fda82ccb4ad810b64d43b4e6/components/cryptauth/foreground_eid_generator.cc
[modify] https://crrev.com/9e37feaaf0077075fda82ccb4ad810b64d43b4e6/components/cryptauth/foreground_eid_generator.h
[modify] https://crrev.com/9e37feaaf0077075fda82ccb4ad810b64d43b4e6/components/cryptauth/foreground_eid_generator_unittest.cc

Project Member

Comment 6 by bugdroid1@chromium.org, Nov 30 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9fc068b18157f94a927720d9654bda5b216940e9

commit 9fc068b18157f94a927720d9654bda5b216940e9
Author: tzik <tzik@chromium.org>
Date: Thu Nov 30 00:31:23 2017

Use the shared instance of base::Default{,Tick}Clock in //components/content_settings

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership complex.

After this CL, the clock instances are always un-owned by injectees.
Instead, an injecter owned one is used on testing, and the shared
instance is used on production path.

Bug: 789079
Change-Id: Ie3f2713dcb54c4bca5b7f10f7019199c52da8fbc
Reviewed-on: https://chromium-review.googlesource.com/796050
Reviewed-by: Martin Šrámek <msramek@chromium.org>
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#520336}
[modify] https://crrev.com/9fc068b18157f94a927720d9654bda5b216940e9/chrome/browser/browsing_data/site_settings_counter_unittest.cc
[modify] https://crrev.com/9fc068b18157f94a927720d9654bda5b216940e9/chrome/browser/content_settings/content_settings_pref_provider_unittest.cc
[modify] https://crrev.com/9fc068b18157f94a927720d9654bda5b216940e9/chrome/browser/content_settings/host_content_settings_map_unittest.cc
[modify] https://crrev.com/9fc068b18157f94a927720d9654bda5b216940e9/components/content_settings/core/browser/content_settings_pref_provider.cc
[modify] https://crrev.com/9fc068b18157f94a927720d9654bda5b216940e9/components/content_settings/core/browser/content_settings_pref_provider.h
[modify] https://crrev.com/9fc068b18157f94a927720d9654bda5b216940e9/components/content_settings/core/browser/host_content_settings_map.cc
[modify] https://crrev.com/9fc068b18157f94a927720d9654bda5b216940e9/components/content_settings/core/browser/host_content_settings_map.h

Project Member

Comment 7 by bugdroid1@chromium.org, Dec 1 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/73d7546b58c0b17891cc0b9aa842d0aba2b4ccd8

commit 73d7546b58c0b17891cc0b9aa842d0aba2b4ccd8
Author: tzik <tzik@chromium.org>
Date: Fri Dec 01 13:15:51 2017

Use the shared instance of base::Default{,Tick}Clock in //components/proximity_auth

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership complex.

After this CL, the clock instances are always un-owned by injectees.
Instead, an injecter owned one is used on testing, and the shared
instance is used on production path.

Bug: 789079
Change-Id: I81827e316527a39aba290120db84ff1a4e782069
Reviewed-on: https://chromium-review.googlesource.com/799657
Reviewed-by: Kyle Horimoto <khorimoto@chromium.org>
Reviewed-by: David Roger <droger@chromium.org>
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#520922}
[modify] https://crrev.com/73d7546b58c0b17891cc0b9aa842d0aba2b4ccd8/chrome/browser/signin/easy_unlock_service_regular.cc
[modify] https://crrev.com/73d7546b58c0b17891cc0b9aa842d0aba2b4ccd8/components/proximity_auth/promotion_manager.cc
[modify] https://crrev.com/73d7546b58c0b17891cc0b9aa842d0aba2b4ccd8/components/proximity_auth/promotion_manager.h
[modify] https://crrev.com/73d7546b58c0b17891cc0b9aa842d0aba2b4ccd8/components/proximity_auth/promotion_manager_unittests.cc
[modify] https://crrev.com/73d7546b58c0b17891cc0b9aa842d0aba2b4ccd8/components/proximity_auth/proximity_auth_system.cc
[modify] https://crrev.com/73d7546b58c0b17891cc0b9aa842d0aba2b4ccd8/components/proximity_auth/proximity_auth_system.h
[modify] https://crrev.com/73d7546b58c0b17891cc0b9aa842d0aba2b4ccd8/components/proximity_auth/proximity_auth_system_unittest.cc
[modify] https://crrev.com/73d7546b58c0b17891cc0b9aa842d0aba2b4ccd8/components/proximity_auth/proximity_monitor_impl.cc
[modify] https://crrev.com/73d7546b58c0b17891cc0b9aa842d0aba2b4ccd8/components/proximity_auth/proximity_monitor_impl.h
[modify] https://crrev.com/73d7546b58c0b17891cc0b9aa842d0aba2b4ccd8/components/proximity_auth/proximity_monitor_impl_unittest.cc
[modify] https://crrev.com/73d7546b58c0b17891cc0b9aa842d0aba2b4ccd8/components/proximity_auth/unlock_manager_impl.cc

Project Member

Comment 8 by bugdroid1@chromium.org, Dec 2 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7393de078b61d5c067444746c2b950f7650568bc

commit 7393de078b61d5c067444746c2b950f7650568bc
Author: tzik <tzik@chromium.org>
Date: Sat Dec 02 03:28:17 2017

Use the shared instance of base::Default{,Tick}Clock in previews

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership complex.

After this CL, the clock instances are always un-owned by injectees.
Instead, an injecter owned one is used on testing, and the shared
instance is used on production path.

Bug: 789079
Change-Id: Ic91e3cbb16c8d66131936b6b4c6e74ed212602c2
Reviewed-on: https://chromium-review.googlesource.com/803154
Reviewed-by: Tarun Bansal <tbansal@chromium.org>
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#521191}
[modify] https://crrev.com/7393de078b61d5c067444746c2b950f7650568bc/chrome/browser/net/spdyproxy/data_reduction_proxy_settings_unittest_android.cc
[modify] https://crrev.com/7393de078b61d5c067444746c2b950f7650568bc/components/data_reduction_proxy/core/browser/data_reduction_proxy_delegate.cc
[modify] https://crrev.com/7393de078b61d5c067444746c2b950f7650568bc/components/data_reduction_proxy/core/browser/data_reduction_proxy_delegate.h
[modify] https://crrev.com/7393de078b61d5c067444746c2b950f7650568bc/components/data_reduction_proxy/core/browser/data_reduction_proxy_delegate_unittest.cc
[modify] https://crrev.com/7393de078b61d5c067444746c2b950f7650568bc/components/data_reduction_proxy/core/browser/data_reduction_proxy_settings.cc
[modify] https://crrev.com/7393de078b61d5c067444746c2b950f7650568bc/components/data_reduction_proxy/core/browser/data_reduction_proxy_settings.h
[modify] https://crrev.com/7393de078b61d5c067444746c2b950f7650568bc/components/data_reduction_proxy/core/browser/data_reduction_proxy_settings_test_utils.cc
[modify] https://crrev.com/7393de078b61d5c067444746c2b950f7650568bc/components/data_reduction_proxy/core/browser/data_reduction_proxy_settings_test_utils.h
[modify] https://crrev.com/7393de078b61d5c067444746c2b950f7650568bc/components/data_reduction_proxy/core/browser/data_reduction_proxy_settings_unittest.cc
[modify] https://crrev.com/7393de078b61d5c067444746c2b950f7650568bc/components/previews/content/previews_io_data.cc
[modify] https://crrev.com/7393de078b61d5c067444746c2b950f7650568bc/components/previews/content/previews_io_data_unittest.cc
[modify] https://crrev.com/7393de078b61d5c067444746c2b950f7650568bc/components/previews/core/previews_black_list.cc
[modify] https://crrev.com/7393de078b61d5c067444746c2b950f7650568bc/components/previews/core/previews_black_list.h
[modify] https://crrev.com/7393de078b61d5c067444746c2b950f7650568bc/components/previews/core/previews_black_list_unittest.cc

Comment 9 by tzik@chromium.org, Dec 4 2017

Owner: tzik@chromium.org
Status: Assigned (was: Available)
Project Member

Comment 10 by bugdroid1@chromium.org, Dec 4 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c00f529a2c5c4bbea8730f0d624ebb4be727c435

commit c00f529a2c5c4bbea8730f0d624ebb4be727c435
Author: tzik <tzik@chromium.org>
Date: Mon Dec 04 12:48:29 2017

Use the shared instance of base::Default{,Tick}Clock in //components/ntp_snippets

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership complex.

After this CL, the clock instances are always un-owned by injectees.
Instead, an injecter owned one is used on testing, and the shared
instance is used on production path.

Bug: 789079
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: I19035597d971a8d1e98290437bfc0bcf603b312a
Reviewed-on: https://chromium-review.googlesource.com/803176
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Gauthier Ambard <gambard@chromium.org>
Reviewed-by: Marc Treib <treib@chromium.org>
Cr-Commit-Position: refs/heads/master@{#521322}
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/chrome/browser/android/ntp/content_suggestions_notifier_service_unittest.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/chrome/browser/ntp_snippets/content_suggestions_service_factory.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/chrome/browser/ntp_snippets/download_suggestions_provider.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/chrome/browser/ntp_snippets/download_suggestions_provider.h
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/chrome/browser/ntp_snippets/download_suggestions_provider_unittest.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/breaking_news/breaking_news_gcm_app_handler.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/breaking_news/breaking_news_gcm_app_handler.h
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/breaking_news/breaking_news_gcm_app_handler_unittest.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/category_rankers/click_based_category_ranker.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/category_rankers/click_based_category_ranker.h
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/category_rankers/click_based_category_ranker_unittest.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/content_suggestions_service_unittest.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/features.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/features.h
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/remote/remote_suggestions_fetcher_impl.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/remote/remote_suggestions_fetcher_impl.h
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/remote/remote_suggestions_fetcher_impl_unittest.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/remote/remote_suggestions_provider_impl.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/remote/remote_suggestions_provider_impl.h
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/remote/remote_suggestions_provider_impl_unittest.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/remote/remote_suggestions_scheduler_impl.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/remote/remote_suggestions_scheduler_impl.h
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/remote/remote_suggestions_scheduler_impl_unittest.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/user_classifier.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/user_classifier.h
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/components/ntp_snippets/user_classifier_unittest.cc
[modify] https://crrev.com/c00f529a2c5c4bbea8730f0d624ebb4be727c435/ios/chrome/browser/ntp_snippets/ios_chrome_content_suggestions_service_factory_util.cc

Project Member

Comment 11 by bugdroid1@chromium.org, Dec 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2c963b87ee0be183b0092a8bdbb4845c749dd12e

commit 2c963b87ee0be183b0092a8bdbb4845c749dd12e
Author: tzik <tzik@chromium.org>
Date: Thu Dec 07 06:57:24 2017

Use the shared instance of base::Default{,Tick}Clock in //media

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership complex.

After this CL, the clock instances are always un-owned by injectees.
Instead, an injecter owned one is used on testing, and the shared
instance is used on production path.

Bug: 789079
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: I19fe124cf9b0a9f3c229d5e209352384930ebc1b
Reviewed-on: https://chromium-review.googlesource.com/795272
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Xiaohan Wang <xhwang@chromium.org>
Reviewed-by: Yuri Wiitala <miu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#522373}
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/extensions/api/cast_streaming/performance_test.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/cast_remoting_sender.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/cast_remoting_sender.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/cast_transport_host_filter.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/cast_transport_host_filter.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/media_engagement_browsertest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/media_engagement_contents_observer.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/media_engagement_contents_observer_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/media_engagement_service.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/media_engagement_service.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/media_engagement_service_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/media_engagement_session_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/router/discovery/dial/dial_registry.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/router/discovery/dial/dial_registry.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/router/discovery/dial/dial_registry_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/router/discovery/discovery_network_monitor.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/router/discovery/discovery_network_monitor_metric_observer.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/router/discovery/discovery_network_monitor_metric_observer.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/router/discovery/discovery_network_monitor_metric_observer_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/router/discovery/mdns/cast_media_sink_service_impl.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/router/discovery/mdns/cast_media_sink_service_impl.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/router/discovery/mdns/cast_media_sink_service_impl_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/router/discovery/media_sink_discovery_metrics.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/router/discovery/media_sink_discovery_metrics.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/browser/media/router/discovery/media_sink_discovery_metrics_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/renderer/media/cast_session_delegate.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/renderer/media/chrome_key_systems_provider.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/renderer/media/chrome_key_systems_provider.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/chrome/renderer/media/chrome_key_systems_provider_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/audio/alsa/alsa_output.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/audio/alsa/alsa_output.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/audio/alsa/alsa_output_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/base/null_video_sink.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/base/null_video_sink.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/base/video_frame_pool.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/base/wall_clock_time_source.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/base/wall_clock_time_source.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/blink/video_decode_stats_reporter.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/blink/video_decode_stats_reporter.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/blink/video_decode_stats_reporter_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/blink/video_frame_compositor.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/blink/video_frame_compositor.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/blink/video_frame_compositor_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/blink/webmediaplayer_impl.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/blink/webmediaplayer_impl.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/blink/webmediaplayer_impl_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/cast_environment.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/cast_environment.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/logging/encoding_event_subscriber_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/logging/receiver_time_offset_estimator_impl_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/logging/simple_event_subscriber_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/logging/stats_event_subscriber_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/net/rtcp/receiver_rtcp_event_subscriber_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/receiver/frame_receiver_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/sender/audio_encoder_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/sender/audio_sender_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/sender/h264_vt_encoder_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/sender/video_encoder_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/sender/video_sender_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/test/cast_benchmarks.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/test/end2end_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/test/sender.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/test/simulator.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/test/utility/standalone_cast_environment.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/test/utility/tap_proxy.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/cast/test/utility/udp_proxy.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/filters/frame_buffer_pool.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/filters/frame_buffer_pool.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/mojo/clients/mojo_renderer.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/mojo/clients/mojo_renderer.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/remoting/courier_renderer.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/remoting/courier_renderer.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/remoting/courier_renderer_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/remoting/renderer_controller.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/remoting/renderer_controller.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/remoting/renderer_controller_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/renderers/audio_renderer_impl.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/renderers/audio_renderer_impl.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/renderers/audio_renderer_impl_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/renderers/video_renderer_impl.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/renderers/video_renderer_impl.h
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/renderers/video_renderer_impl_unittest.cc
[modify] https://crrev.com/2c963b87ee0be183b0092a8bdbb4845c749dd12e/media/video/gpu_memory_buffer_video_frame_pool.cc

Project Member

Comment 12 by bugdroid1@chromium.org, Dec 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/263317496a2919641d4cb01a7adc6a9fef6d3474

commit 263317496a2919641d4cb01a7adc6a9fef6d3474
Author: tzik <tzik@chromium.org>
Date: Thu Dec 07 07:28:33 2017

Use the shared instance of base::Default{,Tick}Clock in //net

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership complex.

After this CL, the clock instances are always un-owned by injectees.
Instead, an injecter owned one is used on testing, and the shared
instance is used on production path.

Bug: 789079
Change-Id: I155e0e7cbbd79340bbb0fe03b0f2697729c1cd71
Reviewed-on: https://chromium-review.googlesource.com/795280
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Matt Menke <mmenke@chromium.org>
Cr-Commit-Position: refs/heads/master@{#522376}
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/base/network_throttle_manager_impl.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/base/network_throttle_manager_impl.h
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/base/network_throttle_manager_impl_unittest.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/dns/mdns_client_impl.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/dns/mdns_client_impl.h
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/dns/mdns_client_unittest.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/http/http_cache.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/http/http_cache.h
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/http/http_cache_unittest.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/http/http_server_properties_impl.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/http/http_server_properties_impl.h
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/http/http_server_properties_manager.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/http/http_server_properties_manager.h
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/http/http_server_properties_manager_unittest.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/network_error_logging/network_error_logging_service.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/network_error_logging/network_error_logging_service.h
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/nqe/network_quality_estimator.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/nqe/network_quality_estimator.h
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/nqe/network_quality_estimator_unittest.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/nqe/throughput_analyzer_unittest.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/reporting/reporting_context.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/reporting/reporting_context.h
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/reporting/reporting_header_parser_fuzzer.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/reporting/reporting_service_unittest.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/reporting/reporting_test_util.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/reporting/reporting_test_util.h
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/ssl/ssl_client_session_cache.cc
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/ssl/ssl_client_session_cache.h
[modify] https://crrev.com/263317496a2919641d4cb01a7adc6a9fef6d3474/net/ssl/ssl_client_session_cache_unittest.cc

Project Member

Comment 13 by bugdroid1@chromium.org, Dec 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a

commit 20bea7a68c823e5b7eb37487ee169dc4ff2bf00a
Author: tzik <tzik@chromium.org>
Date: Thu Dec 07 12:20:41 2017

Use the shared instance of base::Default{,Tick}Clock in Blink scheduler

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership complex.

After this CL, the clock instances are always un-owned by injectees.
Instead, an injecter owned one is used on testing, and the shared
instance is used on production path.

Bug: 789079
Change-Id: I8af4709520e8c4484ecfe9c71aeb37fe629155d0
Reviewed-on: https://chromium-review.googlesource.com/792756
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Alexander Timin <altimin@chromium.org>
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#522405}
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/BUILD.gn
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/DEPS
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/base/DEPS
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_delegate_for_test.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_delegate_for_test.h
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_perftest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_unittest.cc
[delete] https://crrev.com/c7b2505fb9ce94903583bd41f7fd4e97f21cc7de/third_party/WebKit/Source/platform/scheduler/base/test_time_source.cc
[delete] https://crrev.com/c7b2505fb9ce94903583bd41f7fd4e97f21cc7de/third_party/WebKit/Source/platform/scheduler/base/test_time_source.h
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/base/thread_controller_impl.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/base/thread_controller_impl.h
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/base/time_domain_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/child/DEPS
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/child/idle_canceled_delayed_task_sweeper_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/child/idle_helper_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/child/scheduler_helper_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/child/worker_global_scope_scheduler_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/child/worker_scheduler_impl_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/renderer/auto_advancing_virtual_time_domain_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/renderer/budget_pool_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/renderer/idle_time_estimator_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/renderer/queueing_time_estimator_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/renderer/renderer_metrics_helper_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/renderer/task_cost_estimator_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/renderer/web_frame_scheduler_impl_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/renderer/web_view_scheduler_impl_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/renderer/webthread_impl_for_renderer_scheduler_unittest.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/test/create_task_queue_manager_for_test.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/test/create_task_queue_manager_for_test.h
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/test/lazy_scheduler_message_loop_delegate_for_tests.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/scheduler/test/lazy_thread_controller_for_test.cc
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/testing/TestingPlatformSupport.cpp
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/testing/TestingPlatformSupportWithMockScheduler.cpp
[modify] https://crrev.com/20bea7a68c823e5b7eb37487ee169dc4ff2bf00a/third_party/WebKit/Source/platform/testing/TestingPlatformSupportWithMockScheduler.h

Project Member

Comment 14 by bugdroid1@chromium.org, Feb 4 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c528f506d871dccb21187a589823cc9c04ed00ae

commit c528f506d871dccb21187a589823cc9c04ed00ae
Author: tzik <tzik@chromium.org>
Date: Sun Feb 04 19:13:53 2018

Use the shared instance of base::Default{,Tick}Clock in autofill

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Change-Id: I99618624afd9f964d5cc7915ff0bee1fdda3c2c1
Reviewed-on: https://chromium-review.googlesource.com/897173
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Vaclav Brozek <vabr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#534299}
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/chrome/browser/ui/passwords/manage_passwords_bubble_model.cc
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/chrome/browser/ui/passwords/manage_passwords_bubble_model.h
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/chrome/browser/ui/passwords/manage_passwords_bubble_model_unittest.cc
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/chrome/browser/ui/passwords/password_access_authenticator.cc
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/chrome/browser/ui/passwords/password_access_authenticator.h
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/chrome/browser/ui/passwords/password_access_authenticator_unittest.cc
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/components/autofill/core/browser/test_autofill_clock.cc
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/components/autofill/core/browser/test_autofill_clock.h
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/components/autofill/core/common/autofill_clock.cc
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/components/autofill/core/common/autofill_clock.h
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/components/password_manager/core/browser/android_affiliation/affiliation_backend.cc
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/components/password_manager/core/browser/android_affiliation/affiliation_backend.h
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/components/password_manager/core/browser/android_affiliation/affiliation_backend_unittest.cc
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/components/password_manager/core/browser/android_affiliation/affiliation_fetch_throttler_unittest.cc
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/components/password_manager/core/browser/android_affiliation/affiliation_service.cc
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/components/password_manager/core/browser/android_affiliation/facet_manager_unittest.cc
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/components/password_manager/core/browser/password_reuse_detection_manager.cc
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/components/password_manager/core/browser/password_reuse_detection_manager.h
[modify] https://crrev.com/c528f506d871dccb21187a589823cc9c04ed00ae/components/password_manager/core/browser/password_reuse_detection_manager_unittest.cc

Project Member

Comment 15 by bugdroid1@chromium.org, Feb 6 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9b9612787de42d03d3ae15e5c901c3ea71c25891

commit 9b9612787de42d03d3ae15e5c901c3ea71c25891
Author: tzik <tzik@chromium.org>
Date: Tue Feb 06 01:48:22 2018

Use the shared instance of base::Default{,Tick}Clock in //remoting

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Change-Id: Ia4fdba667a6e93cfa1cd9e982fb18b012dac6ada
Reviewed-on: https://chromium-review.googlesource.com/899323
Reviewed-by: Yuwei Huang <yuweih@chromium.org>
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#534580}
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/base/rate_counter.h
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/client/ui/fling_animation.cc
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/client/ui/fling_animation.h
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/client/ui/fling_animation_unittest.cc
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/codec/video_encoder_vpx.cc
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/codec/video_encoder_vpx.h
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/codec/webrtc_video_encoder_vpx.cc
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/codec/webrtc_video_encoder_vpx.h
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/host/gcd_rest_client.cc
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/host/gcd_rest_client.h
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/host/gcd_rest_client_unittest.cc
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/host/gcd_state_updater_unittest.cc
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/protocol/capture_scheduler.cc
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/protocol/capture_scheduler.h
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/protocol/capture_scheduler_unittest.cc
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/test/cyclic_frame_generator.cc
[modify] https://crrev.com/9b9612787de42d03d3ae15e5c901c3ea71c25891/remoting/test/cyclic_frame_generator.h

Project Member

Comment 16 by bugdroid1@chromium.org, Feb 27 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f7fa699d6ebef53e66876ea8d2040d233dc9dfaa

commit f7fa699d6ebef53e66876ea8d2040d233dc9dfaa
Author: tzik <tzik@chromium.org>
Date: Tue Feb 27 03:52:01 2018

Use the shared instance of base::Default{,Tick}Clock in safe_browsing

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Change-Id: I992b13352a6fa1028bd8eeb2223056cc2cecf610
Reviewed-on: https://chromium-review.googlesource.com/900882
Reviewed-by: Varun Khaneja <vakh@chromium.org>
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#539395}
[modify] https://crrev.com/f7fa699d6ebef53e66876ea8d2040d233dc9dfaa/chrome/browser/safe_browsing/certificate_reporting_service_browsertest.cc
[modify] https://crrev.com/f7fa699d6ebef53e66876ea8d2040d233dc9dfaa/chrome/browser/safe_browsing/certificate_reporting_service_factory.cc
[modify] https://crrev.com/f7fa699d6ebef53e66876ea8d2040d233dc9dfaa/chrome/browser/safe_browsing/certificate_reporting_service_factory.h
[modify] https://crrev.com/f7fa699d6ebef53e66876ea8d2040d233dc9dfaa/chrome/browser/safe_browsing/permission_reporter.cc
[modify] https://crrev.com/f7fa699d6ebef53e66876ea8d2040d233dc9dfaa/chrome/browser/safe_browsing/permission_reporter.h
[modify] https://crrev.com/f7fa699d6ebef53e66876ea8d2040d233dc9dfaa/chrome/browser/safe_browsing/permission_reporter_browsertest.cc
[modify] https://crrev.com/f7fa699d6ebef53e66876ea8d2040d233dc9dfaa/chrome/browser/safe_browsing/permission_reporter_unittest.cc
[modify] https://crrev.com/f7fa699d6ebef53e66876ea8d2040d233dc9dfaa/components/safe_browsing/db/v4_get_hash_protocol_manager.cc
[modify] https://crrev.com/f7fa699d6ebef53e66876ea8d2040d233dc9dfaa/components/safe_browsing/db/v4_get_hash_protocol_manager.h
[modify] https://crrev.com/f7fa699d6ebef53e66876ea8d2040d233dc9dfaa/components/safe_browsing/db/v4_get_hash_protocol_manager_unittest.cc
[modify] https://crrev.com/f7fa699d6ebef53e66876ea8d2040d233dc9dfaa/components/safe_browsing/triggers/trigger_throttler.cc
[modify] https://crrev.com/f7fa699d6ebef53e66876ea8d2040d233dc9dfaa/components/safe_browsing/triggers/trigger_throttler.h
[modify] https://crrev.com/f7fa699d6ebef53e66876ea8d2040d233dc9dfaa/components/safe_browsing/triggers/trigger_throttler_unittest.cc

Project Member

Comment 17 by bugdroid1@chromium.org, Feb 28 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8529bdd8b0ff0461da4e02379c1b581b1d10e245

commit 8529bdd8b0ff0461da4e02379c1b581b1d10e245
Author: tzik <tzik@chromium.org>
Date: Wed Feb 28 05:47:21 2018

Use the shared instance of base::Default{,Tick}Clock in ash/ and ui/

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Change-Id: I20ed19cc13da1b9f078b71e9e39f23b7c5d1b0de
Reviewed-on: https://chromium-review.googlesource.com/936947
Reviewed-by: Scott Violet <sky@chromium.org>
Reviewed-by: Alexei Svitkine <asvitkine@chromium.org>
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#539724}
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/accessibility/touch_accessibility_enabler_unittest.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/accessibility/touch_exploration_controller_unittest.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/metrics/task_switch_time_tracker.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/metrics/task_switch_time_tracker.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/metrics/task_switch_time_tracker_test_api.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/metrics/task_switch_time_tracker_test_api.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/shelf/shelf_button_pressed_metric_tracker.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/shelf/shelf_button_pressed_metric_tracker.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/shelf/shelf_button_pressed_metric_tracker_test_api.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/shelf/shelf_button_pressed_metric_tracker_test_api.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/shelf/shelf_button_pressed_metric_tracker_unittest.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/system/palette/palette_tray_unittest.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/system/power/power_button_controller.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/system/power/power_button_controller.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/system/power/power_button_screenshot_controller_unittest.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/system/power/power_button_test_base.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/system/power/power_button_test_base.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/system/power/tablet_power_button_controller_unittest.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/system/session/logout_confirmation_controller.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/system/session/logout_confirmation_controller.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/system/session/logout_confirmation_controller_unittest.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/wm/tablet_mode/tablet_mode_controller.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/wm/tablet_mode/tablet_mode_controller.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ash/wm/tablet_mode/tablet_mode_controller_unittest.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/renderer_host/chrome_render_widget_host_view_mac_history_swiper_browsertest.mm
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/ui/app_list/search/app_search_provider.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/ui/app_list/search/app_search_provider.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/ui/app_list/search/app_search_provider_unittest.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/ui/app_list/search/search_controller_factory.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/ui/blocked_content/popup_opener_tab_helper.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/ui/blocked_content/popup_opener_tab_helper.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/ui/blocked_content/popup_opener_tab_helper_unittest.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/ui/blocked_content/popup_tracker.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/ui/blocked_content/popup_tracker.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/ui/tab_helpers.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/ui/webui/browsing_history_handler.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/ui/webui/browsing_history_handler.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/ui/webui/browsing_history_handler_unittest.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler_unittest.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/content/browser/renderer_host/render_widget_host_view_mac_unittest.mm
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ui/events/base_event_utils.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ui/events/base_event_utils.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ui/events/blink/input_handler_proxy.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ui/events/blink/input_handler_proxy.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ui/events/blink/input_handler_proxy_unittest.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ui/events/test/event_generator.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ui/events/test/event_generator.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ui/events/test/scoped_event_test_tick_clock.h
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ui/events/x/events_x_unittest.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ui/events/x/events_x_utils.cc
[modify] https://crrev.com/8529bdd8b0ff0461da4e02379c1b581b1d10e245/ui/events/x/events_x_utils.h

Project Member

Comment 18 by bugdroid1@chromium.org, Feb 28 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3ed101779ddbb4f11241514f544e754e1bfb386d

commit 3ed101779ddbb4f11241514f544e754e1bfb386d
Author: tzik <tzik@chromium.org>
Date: Wed Feb 28 07:50:03 2018

Use the shared instance of base::Default{,Tick}Clock in tether/

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Change-Id: Ia356ea3386b1452a76ea6858f50e0a7944a2b63e
Reviewed-on: https://chromium-review.googlesource.com/937043
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Kyle Horimoto <khorimoto@chromium.org>
Cr-Commit-Position: refs/heads/master@{#539746}
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/ble_connection_manager.cc
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/ble_connection_manager.h
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/ble_connection_manager_unittest.cc
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/ble_synchronizer.cc
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/ble_synchronizer.h
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/ble_synchronizer_unittest.cc
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/connect_tethering_operation.cc
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/connect_tethering_operation.h
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/connect_tethering_operation_unittest.cc
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/disconnect_tethering_operation.cc
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/disconnect_tethering_operation.h
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/disconnect_tethering_operation_unittest.cc
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/host_scan_scheduler_impl.cc
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/host_scan_scheduler_impl.h
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/host_scan_scheduler_impl_unittest.cc
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/host_scanner_operation.cc
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/host_scanner_operation.h
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/host_scanner_operation_unittest.cc
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/keep_alive_operation.cc
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/keep_alive_operation.h
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/keep_alive_operation_unittest.cc
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/synchronous_shutdown_object_container_impl.cc
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/synchronous_shutdown_object_container_impl.h
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/wifi_hotspot_connector.cc
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/wifi_hotspot_connector.h
[modify] https://crrev.com/3ed101779ddbb4f11241514f544e754e1bfb386d/chromeos/components/tether/wifi_hotspot_connector_unittest.cc

Project Member

Comment 19 by bugdroid1@chromium.org, Feb 28 2018

Labels: merge-merged-3356
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0104b2b09a80d971430fda6e033889b08cb8c53c

commit 0104b2b09a80d971430fda6e033889b08cb8c53c
Author: Kyle Horimoto <khorimoto@google.com>
Date: Wed Feb 28 20:39:52 2018

Use the shared instance of base::Default{,Tick}Clock in tether/

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

TBR=tzik@chromium.org

(cherry picked from commit 3ed101779ddbb4f11241514f544e754e1bfb386d)

Bug: 789079
Change-Id: Ia356ea3386b1452a76ea6858f50e0a7944a2b63e
Reviewed-on: https://chromium-review.googlesource.com/937043
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Kyle Horimoto <khorimoto@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#539746}
Reviewed-on: https://chromium-review.googlesource.com/941610
Cr-Commit-Position: refs/branch-heads/3356@{#6}
Cr-Branched-From: 43318c02bb32c8eb07e9739904d15778d64d3094-refs/heads/master@{#539380}
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/ble_connection_manager.cc
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/ble_connection_manager.h
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/ble_connection_manager_unittest.cc
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/ble_synchronizer.cc
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/ble_synchronizer.h
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/ble_synchronizer_unittest.cc
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/connect_tethering_operation.cc
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/connect_tethering_operation.h
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/connect_tethering_operation_unittest.cc
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/disconnect_tethering_operation.cc
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/disconnect_tethering_operation.h
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/disconnect_tethering_operation_unittest.cc
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/host_scan_scheduler_impl.cc
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/host_scan_scheduler_impl.h
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/host_scan_scheduler_impl_unittest.cc
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/host_scanner_operation.cc
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/host_scanner_operation.h
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/host_scanner_operation_unittest.cc
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/keep_alive_operation.cc
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/keep_alive_operation.h
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/keep_alive_operation_unittest.cc
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/synchronous_shutdown_object_container_impl.cc
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/synchronous_shutdown_object_container_impl.h
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/wifi_hotspot_connector.cc
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/wifi_hotspot_connector.h
[modify] https://crrev.com/0104b2b09a80d971430fda6e033889b08cb8c53c/chromeos/components/tether/wifi_hotspot_connector_unittest.cc

Project Member

Comment 20 by bugdroid1@chromium.org, Mar 6 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1848ad947d3baa152a9b64d02058d3942dd6f4b2

commit 1848ad947d3baa152a9b64d02058d3942dd6f4b2
Author: tzik <tzik@chromium.org>
Date: Tue Mar 06 15:31:51 2018

Use the shared instance of base::Default{,Tick}Clock in /tools/battor_agent

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

This CL was uploaded by git cl split.

R=nednguyen@google.com

Bug: 789079
Change-Id: Ia33edaa205c25d352a845a80a5206fd59d43a468
Reviewed-on: https://chromium-review.googlesource.com/942592
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Charlie Andrews <charliea@chromium.org>
Cr-Commit-Position: refs/heads/master@{#541105}
[modify] https://crrev.com/1848ad947d3baa152a9b64d02058d3942dd6f4b2/tools/battor_agent/battor_agent.cc
[modify] https://crrev.com/1848ad947d3baa152a9b64d02058d3942dd6f4b2/tools/battor_agent/battor_agent.h
[modify] https://crrev.com/1848ad947d3baa152a9b64d02058d3942dd6f4b2/tools/battor_agent/battor_agent_unittest.cc
[modify] https://crrev.com/1848ad947d3baa152a9b64d02058d3942dd6f4b2/tools/battor_agent/battor_connection_impl.cc
[modify] https://crrev.com/1848ad947d3baa152a9b64d02058d3942dd6f4b2/tools/battor_agent/battor_connection_impl.h
[modify] https://crrev.com/1848ad947d3baa152a9b64d02058d3942dd6f4b2/tools/battor_agent/battor_connection_impl_unittest.cc

Project Member

Comment 21 by bugdroid1@chromium.org, Mar 8 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9fd63858187fab6af850af25e920a1edbb6e97c5

commit 9fd63858187fab6af850af25e920a1edbb6e97c5
Author: tzik <tzik@chromium.org>
Date: Thu Mar 08 06:14:18 2018

Add TestMockTimeTaskRunner-owned mock clocks

This renames the existing GetMock{,Tick}Clock on TestMockTimeTaskRunner
with DeprecatedGetMock{,Tick}Clock, and adds new GetMock{,Tick}Clock.
The old one returns a new Clock or TickClock object for each call, and
passes its ownership. OTOH, the new one returns a raw pointer to a clock
held by the TestMockTimeTaskRunner instance.

This is needed to update the ownership policy of base::Clock and
base::TickClock from the injectee-owned style to the injector-owned
style.

Bug: 789079
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel
Change-Id: I8b831eff74e6a8d0f1f67dc1806e3cc24831196f
Reviewed-on: https://chromium-review.googlesource.com/937148
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Ken Rockot <rockot@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: Charlie Andrews <charliea@chromium.org>
Reviewed-by: Adam Langley <agl@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Xiaohan Wang <xhwang@chromium.org>
Reviewed-by: Yuwei Huang <yuweih@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#541734}
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/ash/system/session/logout_confirmation_controller_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/base/task_scheduler/delayed_task_manager_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/base/test/scoped_task_environment.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/base/test/scoped_task_environment.h
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/base/test/scoped_task_environment_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/base/test/test_mock_time_task_runner.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/base/test/test_mock_time_task_runner.h
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/base/timer/timer_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/chrome/browser/chromeos/policy/app_install_event_log_manager_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/chrome/browser/chromeos/power/ml/idle_event_notifier_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/chrome/browser/chromeos/system/automatic_reboot_manager_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/chrome/browser/media/router/discovery/discovery_network_monitor_metric_observer_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/chrome/browser/offline_pages/prefetch/prefetch_background_task_handler_impl_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/chrome/browser/resource_coordinator/tab_manager_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/chromeos/services/assistant/service_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/components/cast_channel/keep_alive_delegate_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/components/ntp_snippets/breaking_news/breaking_news_gcm_app_handler_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/components/ntp_snippets/remote/json_request_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/components/ntp_snippets/remote/remote_suggestions_fetcher_impl_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/components/ntp_snippets/remote/remote_suggestions_provider_impl_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/components/offline_pages/core/model/offline_page_model_taskified_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/components/password_manager/core/browser/android_affiliation/affiliation_backend_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/components/password_manager/core/browser/android_affiliation/affiliation_fetch_throttler_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/components/password_manager/core/browser/android_affiliation/facet_manager_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/components/policy/core/common/remote_commands/remote_commands_queue_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/components/policy/core/common/remote_commands/remote_commands_service_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/components/suggestions/suggestions_service_impl_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/components/viz/service/frame_sinks/video_capture/frame_sink_video_capturer_impl_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/components/viz/service/frame_sinks/video_detector_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/content/browser/media/capture/desktop_capture_device_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/content/browser/memory/memory_coordinator_impl_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/content/browser/webauth/authenticator_impl_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/content/renderer/service_worker/service_worker_context_client_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/content/renderer/service_worker/service_worker_timeout_timer_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/media/base/android/media_codec_loop_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/media/blink/video_decode_stats_reporter_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/net/http/broken_alternative_services_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/net/http/http_server_properties_impl_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/net/http/http_server_properties_manager_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/remoting/host/gcd_state_updater_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/services/ui/ws/user_activity_monitor_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/tools/battor_agent/battor_agent_unittest.cc
[modify] https://crrev.com/9fd63858187fab6af850af25e920a1edbb6e97c5/tools/battor_agent/battor_connection_impl_unittest.cc

Project Member

Comment 22 by bugdroid1@chromium.org, Mar 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/69f8dcc8fcfb69df27b3832cd41143f94d2a8104

commit 69f8dcc8fcfb69df27b3832cd41143f94d2a8104
Author: tzik <tzik@chromium.org>
Date: Fri Mar 09 14:34:47 2018

Use the shared instance of base::Default{,Tick}Clock in suggestions/ and search_provider_logos/

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Tbr: justincohen@chromium.org
Bug: 789079
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: If1fec026e9d801f76ab46f4f4f28b31ce3eefe34
Reviewed-on: https://chromium-review.googlesource.com/956168
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Marc Treib <treib@chromium.org>
Cr-Commit-Position: refs/heads/master@{#542103}
[modify] https://crrev.com/69f8dcc8fcfb69df27b3832cd41143f94d2a8104/chrome/browser/search/suggestions/suggestions_service_factory.cc
[modify] https://crrev.com/69f8dcc8fcfb69df27b3832cd41143f94d2a8104/components/search_provider_logos/logo_service_impl.cc
[modify] https://crrev.com/69f8dcc8fcfb69df27b3832cd41143f94d2a8104/components/search_provider_logos/logo_service_impl.h
[modify] https://crrev.com/69f8dcc8fcfb69df27b3832cd41143f94d2a8104/components/search_provider_logos/logo_service_impl_unittest.cc
[modify] https://crrev.com/69f8dcc8fcfb69df27b3832cd41143f94d2a8104/components/search_provider_logos/logo_tracker.cc
[modify] https://crrev.com/69f8dcc8fcfb69df27b3832cd41143f94d2a8104/components/search_provider_logos/logo_tracker.h
[modify] https://crrev.com/69f8dcc8fcfb69df27b3832cd41143f94d2a8104/components/suggestions/suggestions_service_impl.cc
[modify] https://crrev.com/69f8dcc8fcfb69df27b3832cd41143f94d2a8104/components/suggestions/suggestions_service_impl.h
[modify] https://crrev.com/69f8dcc8fcfb69df27b3832cd41143f94d2a8104/components/suggestions/suggestions_service_impl_unittest.cc
[modify] https://crrev.com/69f8dcc8fcfb69df27b3832cd41143f94d2a8104/components/suggestions/suggestions_store.cc
[modify] https://crrev.com/69f8dcc8fcfb69df27b3832cd41143f94d2a8104/components/suggestions/suggestions_store.h
[modify] https://crrev.com/69f8dcc8fcfb69df27b3832cd41143f94d2a8104/components/suggestions/suggestions_store_unittest.cc
[modify] https://crrev.com/69f8dcc8fcfb69df27b3832cd41143f94d2a8104/ios/chrome/browser/suggestions/suggestions_service_factory.mm

Project Member

Comment 23 by bugdroid1@chromium.org, Mar 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459

commit ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459
Author: tzik <tzik@chromium.org>
Date: Fri Mar 09 15:35:47 2018

Use the shared instance of base::Default{,Tick}Clock in media/

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: Ic6e68a02228f1678e22569c38257e599d4d4e432
Reviewed-on: https://chromium-review.googlesource.com/937009
Reviewed-by: Xiaohan Wang <xhwang@chromium.org>
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#542119}
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/content/browser/media/capture/desktop_capture_device.cc
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/content/browser/media/capture/desktop_capture_device.h
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/content/browser/media/capture/desktop_capture_device_unittest.cc
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/media/audio/android/audio_track_output_stream.cc
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/media/audio/android/audio_track_output_stream.h
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/media/audio/win/audio_device_listener_win.cc
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/media/audio/win/audio_device_listener_win.h
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/media/audio/win/audio_device_listener_win_unittest.cc
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/media/base/android/media_service_throttler.cc
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/media/base/android/media_service_throttler.h
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/media/base/android/media_service_throttler_unittest.cc
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/media/gpu/android/android_video_surface_chooser_impl.cc
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/media/gpu/android/android_video_surface_chooser_impl.h
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/media/gpu/android/avda_codec_allocator.cc
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/media/gpu/android/promotion_hint_aggregator_impl.cc
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/media/gpu/android/promotion_hint_aggregator_impl.h
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/media/gpu/android/surface_chooser_helper.cc
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/media/gpu/android/surface_chooser_helper.h
[modify] https://crrev.com/ec8f4f09d5f5f9ab6da7e3c8ca532b0655f31459/media/gpu/android/surface_chooser_helper_unittest.cc

Project Member

Comment 24 by bugdroid1@chromium.org, Mar 10 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e584ebee252e1ff4d573b3ad3ba83cdec9009013

commit e584ebee252e1ff4d573b3ad3ba83cdec9009013
Author: tzik <tzik@chromium.org>
Date: Sat Mar 10 09:28:50 2018

Use the shared instance of base::Default{,Tick}Clock in data_usage/

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Change-Id: I0853452f16f4444b5ef336cd06e7fd7b1dc19dac
Reviewed-on: https://chromium-review.googlesource.com/956944
Reviewed-by: Tarun Bansal <tbansal@chromium.org>
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#542370}
[modify] https://crrev.com/e584ebee252e1ff4d573b3ad3ba83cdec9009013/chrome/browser/android/data_usage/data_use_matcher.cc
[modify] https://crrev.com/e584ebee252e1ff4d573b3ad3ba83cdec9009013/chrome/browser/android/data_usage/data_use_matcher.h
[modify] https://crrev.com/e584ebee252e1ff4d573b3ad3ba83cdec9009013/chrome/browser/android/data_usage/data_use_matcher_unittest.cc
[modify] https://crrev.com/e584ebee252e1ff4d573b3ad3ba83cdec9009013/chrome/browser/android/data_usage/data_use_tab_model.cc
[modify] https://crrev.com/e584ebee252e1ff4d573b3ad3ba83cdec9009013/chrome/browser/android/data_usage/data_use_tab_model.h
[modify] https://crrev.com/e584ebee252e1ff4d573b3ad3ba83cdec9009013/chrome/browser/android/data_usage/data_use_tab_model_unittest.cc
[modify] https://crrev.com/e584ebee252e1ff4d573b3ad3ba83cdec9009013/chrome/browser/android/data_usage/tab_data_use_entry_unittest.cc
[modify] https://crrev.com/e584ebee252e1ff4d573b3ad3ba83cdec9009013/components/data_usage/android/traffic_stats_amortizer.cc
[modify] https://crrev.com/e584ebee252e1ff4d573b3ad3ba83cdec9009013/components/data_usage/android/traffic_stats_amortizer.h
[modify] https://crrev.com/e584ebee252e1ff4d573b3ad3ba83cdec9009013/components/data_usage/android/traffic_stats_amortizer_unittest.cc

Project Member

Comment 25 by bugdroid1@chromium.org, Mar 20 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/48479d94b6093c85a2dfb4fd62a0233708a04e4c

commit 48479d94b6093c85a2dfb4fd62a0233708a04e4c
Author: tzik <tzik@chromium.org>
Date: Tue Mar 20 15:20:42 2018

Use the shared instance of base::Default{,Tick}Clock in gcm/ and offline_pages/

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Change-Id: I98eabd76f378c15bccf637c3d6748c2a2aba417e
Reviewed-on: https://chromium-review.googlesource.com/956167
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Filip Gorski <fgorski@chromium.org>
Cr-Commit-Position: refs/heads/master@{#544370}
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/chrome/browser/offline_pages/android/offline_page_model_factory.cc
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/chrome/browser/offline_pages/offline_page_request_job_unittest.cc
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/chrome/browser/offline_pages/offline_page_utils_unittest.cc
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/chrome/browser/offline_pages/test_offline_page_model_builder.cc
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/components/gcm_driver/gcm_account_mapper.cc
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/components/gcm_driver/gcm_account_mapper.h
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/components/gcm_driver/gcm_account_mapper_unittest.cc
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/components/gcm_driver/gcm_client_impl.cc
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/components/gcm_driver/gcm_client_impl.h
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/components/gcm_driver/gcm_client_impl_unittest.cc
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/components/offline_pages/core/model/offline_page_model_taskified.cc
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/components/offline_pages/core/model/offline_page_model_taskified.h
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/components/offline_pages/core/model/offline_page_model_taskified_unittest.cc
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/components/offline_pages/core/prefetch/download_archives_task.cc
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/components/offline_pages/core/prefetch/generate_page_bundle_task.cc
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/components/offline_pages/core/prefetch/generate_page_bundle_task.h
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/components/offline_pages/core/prefetch/generate_page_bundle_task_unittest.cc
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/components/offline_pages/core/prefetch/prefetch_downloader_impl.cc
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/components/offline_pages/core/prefetch/prefetch_downloader_impl.h
[modify] https://crrev.com/48479d94b6093c85a2dfb4fd62a0233708a04e4c/components/offline_pages/core/prefetch/prefetch_downloader_impl_unittest.cc

Project Member

Comment 26 by bugdroid1@chromium.org, Mar 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9a2f9c09473ff8ba191acdc8804f7ed63241cc34

commit 9a2f9c09473ff8ba191acdc8804f7ed63241cc34
Author: tzik <tzik@chromium.org>
Date: Thu Mar 22 04:37:31 2018

Use the shared instance of base::Default{,Tick}Clock in extensions/

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injector-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Change-Id: I786ba9c6425e129770b75e764096284629fb4692
Reviewed-on: https://chromium-review.googlesource.com/955705
Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#544976}
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/chrome/browser/extensions/activity_log/activity_log_policy.cc
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/chrome/browser/extensions/activity_log/activity_log_policy.h
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/chrome/browser/extensions/activity_log/counting_policy_unittest.cc
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/chrome/browser/extensions/activity_log/fullstream_ui_policy_unittest.cc
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/chrome/browser/extensions/test_extension_prefs.cc
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/chrome/browser/extensions/test_extension_prefs.h
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/extensions/browser/api/alarms/alarm_manager.cc
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/extensions/browser/api/alarms/alarm_manager.h
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/extensions/browser/api/alarms/alarms_api.cc
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/extensions/browser/api/alarms/alarms_api.h
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/extensions/browser/api/alarms/alarms_api_unittest.cc
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/extensions/browser/api/feedback_private/feedback_private_api_chromeos_unittest.cc
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/extensions/browser/api/feedback_private/log_source_access_manager.cc
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/extensions/browser/api/feedback_private/log_source_access_manager.h
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/extensions/browser/api/lock_screen_data/lock_screen_item_storage.cc
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/extensions/browser/api/lock_screen_data/lock_screen_item_storage.h
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/extensions/browser/extension_prefs.cc
[modify] https://crrev.com/9a2f9c09473ff8ba191acdc8804f7ed63241cc34/extensions/browser/extension_prefs.h

Project Member

Comment 27 by bugdroid1@chromium.org, Mar 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/bc9cce23b2ad2de940bb313b516eabbf011c0239

commit bc9cce23b2ad2de940bb313b516eabbf011c0239
Author: tzik <tzik@chromium.org>
Date: Thu Mar 22 05:41:07 2018

Use the shared instance of base::Default{,Tick}Clock in policy/

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Change-Id: Ibd4de27bb774c8e00a9dc24e720452245b20c8da
Reviewed-on: https://chromium-review.googlesource.com/956325
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Bartosz Fabianowski <bartfab@chromium.org>
Cr-Commit-Position: refs/heads/master@{#544981}
[modify] https://crrev.com/bc9cce23b2ad2de940bb313b516eabbf011c0239/chrome/browser/chromeos/policy/affiliated_cloud_policy_invalidator.cc
[modify] https://crrev.com/bc9cce23b2ad2de940bb313b516eabbf011c0239/chrome/browser/chromeos/policy/off_hours/device_off_hours_controller.cc
[modify] https://crrev.com/bc9cce23b2ad2de940bb313b516eabbf011c0239/chrome/browser/chromeos/policy/off_hours/device_off_hours_controller.h
[modify] https://crrev.com/bc9cce23b2ad2de940bb313b516eabbf011c0239/chrome/browser/chromeos/policy/off_hours/device_off_hours_controller_unittest.cc
[modify] https://crrev.com/bc9cce23b2ad2de940bb313b516eabbf011c0239/chrome/browser/policy/cloud/cloud_policy_invalidator.cc
[modify] https://crrev.com/bc9cce23b2ad2de940bb313b516eabbf011c0239/chrome/browser/policy/cloud/cloud_policy_invalidator.h
[modify] https://crrev.com/bc9cce23b2ad2de940bb313b516eabbf011c0239/chrome/browser/policy/cloud/cloud_policy_invalidator_unittest.cc
[modify] https://crrev.com/bc9cce23b2ad2de940bb313b516eabbf011c0239/chrome/browser/policy/cloud/user_cloud_policy_invalidator.cc
[modify] https://crrev.com/bc9cce23b2ad2de940bb313b516eabbf011c0239/components/policy/core/common/remote_commands/remote_commands_queue.cc
[modify] https://crrev.com/bc9cce23b2ad2de940bb313b516eabbf011c0239/components/policy/core/common/remote_commands/remote_commands_queue.h
[modify] https://crrev.com/bc9cce23b2ad2de940bb313b516eabbf011c0239/components/policy/core/common/remote_commands/remote_commands_queue_unittest.cc
[modify] https://crrev.com/bc9cce23b2ad2de940bb313b516eabbf011c0239/components/policy/core/common/remote_commands/remote_commands_service.cc
[modify] https://crrev.com/bc9cce23b2ad2de940bb313b516eabbf011c0239/components/policy/core/common/remote_commands/remote_commands_service.h
[modify] https://crrev.com/bc9cce23b2ad2de940bb313b516eabbf011c0239/components/policy/core/common/remote_commands/remote_commands_service_unittest.cc
[modify] https://crrev.com/bc9cce23b2ad2de940bb313b516eabbf011c0239/components/policy/core/common/remote_commands/testing_remote_commands_server.cc
[modify] https://crrev.com/bc9cce23b2ad2de940bb313b516eabbf011c0239/components/policy/core/common/remote_commands/testing_remote_commands_server.h

Project Member

Comment 28 by bugdroid1@chromium.org, Mar 26 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/de38c0116acf754e5fc18bcd1d3934b93870eaa1

commit de38c0116acf754e5fc18bcd1d3934b93870eaa1
Author: tzik <tzik@chromium.org>
Date: Mon Mar 26 13:35:59 2018

Use the shared instance of base::Default{,Tick}Clock in service_worker/

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Change-Id: I9505403cc81e67d02286a3bfb107cb8efb19ba52
Reviewed-on: https://chromium-review.googlesource.com/975502
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#545773}
[modify] https://crrev.com/de38c0116acf754e5fc18bcd1d3934b93870eaa1/content/renderer/service_worker/service_worker_context_client_unittest.cc
[modify] https://crrev.com/de38c0116acf754e5fc18bcd1d3934b93870eaa1/content/renderer/service_worker/service_worker_timeout_timer.cc
[modify] https://crrev.com/de38c0116acf754e5fc18bcd1d3934b93870eaa1/content/renderer/service_worker/service_worker_timeout_timer.h
[modify] https://crrev.com/de38c0116acf754e5fc18bcd1d3934b93870eaa1/content/renderer/service_worker/service_worker_timeout_timer_unittest.cc

Project Member

Comment 29 by bugdroid1@chromium.org, Mar 27 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/528a17ff372b23686e128d4e958562827a195f0c

commit 528a17ff372b23686e128d4e958562827a195f0c
Author: tzik <tzik@chromium.org>
Date: Tue Mar 27 09:42:38 2018

Use the shared instance of base::Default{,Tick}Clock in reading_list/

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: I2c31982370181504cb80f2084ddf7cd15fb043a8
Reviewed-on: https://chromium-review.googlesource.com/975503
Reviewed-by: Olivier Robin <olivierrobin@chromium.org>
Reviewed-by: Marc Treib <treib@chromium.org>
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#546077}
[modify] https://crrev.com/528a17ff372b23686e128d4e958562827a195f0c/components/ntp_snippets/reading_list/reading_list_suggestions_provider_unittest.cc
[modify] https://crrev.com/528a17ff372b23686e128d4e958562827a195f0c/components/reading_list/core/reading_list_model_impl.cc
[modify] https://crrev.com/528a17ff372b23686e128d4e958562827a195f0c/components/reading_list/core/reading_list_model_impl.h
[modify] https://crrev.com/528a17ff372b23686e128d4e958562827a195f0c/components/reading_list/core/reading_list_model_unittest.cc
[modify] https://crrev.com/528a17ff372b23686e128d4e958562827a195f0c/components/reading_list/core/reading_list_store_unittest.cc
[modify] https://crrev.com/528a17ff372b23686e128d4e958562827a195f0c/ios/chrome/browser/reading_list/offline_url_utils_unittest.cc
[modify] https://crrev.com/528a17ff372b23686e128d4e958562827a195f0c/ios/chrome/browser/reading_list/reading_list_model_factory.cc
[modify] https://crrev.com/528a17ff372b23686e128d4e958562827a195f0c/ios/chrome/browser/reading_list/reading_list_web_state_observer_unittest.mm
[modify] https://crrev.com/528a17ff372b23686e128d4e958562827a195f0c/ios/chrome/browser/ui/reading_list/reading_list_collection_view_controller_unittest.mm
[modify] https://crrev.com/528a17ff372b23686e128d4e958562827a195f0c/ios/chrome/browser/ui/reading_list/reading_list_coordinator_unittest.mm
[modify] https://crrev.com/528a17ff372b23686e128d4e958562827a195f0c/ios/chrome/browser/ui/reading_list/reading_list_mediator_unittest.mm

Project Member

Comment 30 by bugdroid1@chromium.org, Mar 28 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/de22dccba05b2f2134a0f9bc8c606d1a137b5996

commit de22dccba05b2f2134a0f9bc8c606d1a137b5996
Author: tzik <tzik@chromium.org>
Date: Wed Mar 28 04:29:07 2018

Use the shared instance of base::Default{,Tick}Clock in resource_coordinator/

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Change-Id: I870132a7b1822d4e0259d79474169bba07b38e0d
Reviewed-on: https://chromium-review.googlesource.com/978261
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#546402}
[modify] https://crrev.com/de22dccba05b2f2134a0f9bc8c606d1a137b5996/services/resource_coordinator/coordination_unit/frame_coordination_unit_impl_unittest.cc
[modify] https://crrev.com/de22dccba05b2f2134a0f9bc8c606d1a137b5996/services/resource_coordinator/coordination_unit/page_coordination_unit_impl_unittest.cc
[modify] https://crrev.com/de22dccba05b2f2134a0f9bc8c606d1a137b5996/services/resource_coordinator/observers/metrics_collector_unittest.cc
[modify] https://crrev.com/de22dccba05b2f2134a0f9bc8c606d1a137b5996/services/resource_coordinator/observers/page_signal_generator_impl_unittest.cc
[modify] https://crrev.com/de22dccba05b2f2134a0f9bc8c606d1a137b5996/services/resource_coordinator/resource_coordinator_clock.cc
[modify] https://crrev.com/de22dccba05b2f2134a0f9bc8c606d1a137b5996/services/resource_coordinator/resource_coordinator_clock.h

Project Member

Comment 31 by bugdroid1@chromium.org, Mar 30 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/18fd458be15fb009947c6b66f08a0dbcf4f0331a

commit 18fd458be15fb009947c6b66f08a0dbcf4f0331a
Author: tzik <tzik@chromium.org>
Date: Fri Mar 30 03:30:00 2018

Use the shared instance of base::Default{,Tick}Clock in chromeos/

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Change-Id: I5f3055270a8c695ed50a69262554f19e9bad3caf
Reviewed-on: https://chromium-review.googlesource.com/978281
Reviewed-by: Scott Violet <sky@chromium.org>
Reviewed-by: Xiyuan Xia <xiyuan@chromium.org>
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#547100}
[modify] https://crrev.com/18fd458be15fb009947c6b66f08a0dbcf4f0331a/chrome/browser/browser_process_platform_part_chromeos.cc
[modify] https://crrev.com/18fd458be15fb009947c6b66f08a0dbcf4f0331a/chrome/browser/chromeos/lock_screen_apps/state_controller.cc
[modify] https://crrev.com/18fd458be15fb009947c6b66f08a0dbcf4f0331a/chrome/browser/chromeos/lock_screen_apps/state_controller.h
[modify] https://crrev.com/18fd458be15fb009947c6b66f08a0dbcf4f0331a/chrome/browser/chromeos/lock_screen_apps/state_controller_unittest.cc
[modify] https://crrev.com/18fd458be15fb009947c6b66f08a0dbcf4f0331a/chrome/browser/chromeos/login/saml/saml_offline_signin_limiter.cc
[modify] https://crrev.com/18fd458be15fb009947c6b66f08a0dbcf4f0331a/chrome/browser/chromeos/login/saml/saml_offline_signin_limiter.h
[modify] https://crrev.com/18fd458be15fb009947c6b66f08a0dbcf4f0331a/chrome/browser/chromeos/power/ml/idle_event_notifier.cc
[modify] https://crrev.com/18fd458be15fb009947c6b66f08a0dbcf4f0331a/chrome/browser/chromeos/power/ml/idle_event_notifier.h
[modify] https://crrev.com/18fd458be15fb009947c6b66f08a0dbcf4f0331a/chrome/browser/chromeos/power/ml/idle_event_notifier_unittest.cc
[modify] https://crrev.com/18fd458be15fb009947c6b66f08a0dbcf4f0331a/chrome/browser/chromeos/system/automatic_reboot_manager.cc
[modify] https://crrev.com/18fd458be15fb009947c6b66f08a0dbcf4f0331a/chrome/browser/chromeos/system/automatic_reboot_manager.h
[modify] https://crrev.com/18fd458be15fb009947c6b66f08a0dbcf4f0331a/chrome/browser/chromeos/system/automatic_reboot_manager_unittest.cc

Project Member

Comment 32 by bugdroid1@chromium.org, Apr 6 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/15bba8177ed65a1f92ea150dc7fa5107284c8a57

commit 15bba8177ed65a1f92ea150dc7fa5107284c8a57
Author: tzik <tzik@chromium.org>
Date: Fri Apr 06 21:24:04 2018

Use the shared instance of base::Default{,Tick}Clock in frame_sinks/

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel
Change-Id: I4742347c9313a431ec9e5e0391ae8db47a1af56a
Reviewed-on: https://chromium-review.googlesource.com/989454
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Saman Sami <samans@chromium.org>
Cr-Commit-Position: refs/heads/master@{#548932}
[modify] https://crrev.com/15bba8177ed65a1f92ea150dc7fa5107284c8a57/components/viz/service/frame_sinks/frame_sink_manager_impl.cc
[modify] https://crrev.com/15bba8177ed65a1f92ea150dc7fa5107284c8a57/components/viz/service/frame_sinks/frame_sink_manager_impl.h
[modify] https://crrev.com/15bba8177ed65a1f92ea150dc7fa5107284c8a57/components/viz/service/frame_sinks/video_detector.cc
[modify] https://crrev.com/15bba8177ed65a1f92ea150dc7fa5107284c8a57/components/viz/service/frame_sinks/video_detector.h
[modify] https://crrev.com/15bba8177ed65a1f92ea150dc7fa5107284c8a57/components/viz/service/frame_sinks/video_detector_unittest.cc

Project Member

Comment 33 by bugdroid1@chromium.org, Apr 7 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7e81a51a43e40fc00987e6494f3487ce361f404e

commit 7e81a51a43e40fc00987e6494f3487ce361f404e
Author: tzik <tzik@chromium.org>
Date: Sat Apr 07 03:53:01 2018

Use the shared instance of base::Default{,Tick}Clock in engagement/ and permissions/

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Change-Id: Ie4e7d0101878c584ceea533d2f5df7500a207f8e
Reviewed-on: https://chromium-review.googlesource.com/989456
Reviewed-by: Dominick Ng <dominickn@chromium.org>
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#549030}
[modify] https://crrev.com/7e81a51a43e40fc00987e6494f3487ce361f404e/chrome/browser/engagement/site_engagement_service.cc
[modify] https://crrev.com/7e81a51a43e40fc00987e6494f3487ce361f404e/chrome/browser/engagement/site_engagement_service.h
[modify] https://crrev.com/7e81a51a43e40fc00987e6494f3487ce361f404e/chrome/browser/engagement/site_engagement_service_unittest.cc
[modify] https://crrev.com/7e81a51a43e40fc00987e6494f3487ce361f404e/chrome/browser/permissions/permission_decision_auto_blocker.cc
[modify] https://crrev.com/7e81a51a43e40fc00987e6494f3487ce361f404e/chrome/browser/permissions/permission_decision_auto_blocker.h
[modify] https://crrev.com/7e81a51a43e40fc00987e6494f3487ce361f404e/chrome/browser/permissions/permission_decision_auto_blocker_unittest.cc

Project Member

Comment 34 by bugdroid1@chromium.org, Apr 10 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a1b24c240e56eafdf6d9d589741131a4c5403220

commit a1b24c240e56eafdf6d9d589741131a4c5403220
Author: tzik <tzik@chromium.org>
Date: Tue Apr 10 07:24:47 2018

Use the shared instance of base::Default{,Tick}Clock in prerender/

This CL changes the ownership of base::Clock and base::TickClock from
injectee-owned to injecter-owned. Before this CL, these instances are
owned by the owner of the injectee or one of the injectees themselves.
That makes the ownership handling complex.

After this CL, the injectee of clocks never own the clock. Instead,
injecters owns a clock for testing, and a shared clock is used on the
production code.

Bug: 789079
Change-Id: Ifb724d96099e6324cfdb7fbf50a6a87cc69449f2
Reviewed-on: https://chromium-review.googlesource.com/989457
Reviewed-by: David Roger <droger@chromium.org>
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#549442}
[modify] https://crrev.com/a1b24c240e56eafdf6d9d589741131a4c5403220/chrome/browser/prerender/prerender_browsertest.cc
[modify] https://crrev.com/a1b24c240e56eafdf6d9d589741131a4c5403220/chrome/browser/prerender/prerender_manager.cc
[modify] https://crrev.com/a1b24c240e56eafdf6d9d589741131a4c5403220/chrome/browser/prerender/prerender_manager.h
[modify] https://crrev.com/a1b24c240e56eafdf6d9d589741131a4c5403220/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc
[modify] https://crrev.com/a1b24c240e56eafdf6d9d589741131a4c5403220/chrome/browser/prerender/prerender_unittest.cc

Project Member

Comment 35 by bugdroid1@chromium.org, Apr 13 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ee78e4960f315f1432a1c45037f86875e5cf7f31

commit ee78e4960f315f1432a1c45037f86875e5cf7f31
Author: tzik <tzik@chromium.org>
Date: Fri Apr 13 12:25:46 2018

Convert base::Clock::Now() a const method

This method should be a const method to be consistent to NowTicks() in
base::TickClock, which is also converted to a const method at
http://crrev.com/821f0e338ebbe420

Bug: 789079
Change-Id: I6b5c9bcee2d730214298ae7a7136ea6b312ad079
Reviewed-on: https://chromium-review.googlesource.com/1001213
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Helen Li <xunjieli@chromium.org>
Reviewed-by: Gabriel Charette <gab@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#550598}
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/base/test/simple_test_clock.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/base/test/simple_test_clock.h
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/base/test/test_mock_time_task_runner.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/base/test/test_mock_time_task_runner.h
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/base/time/clock.h
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/base/time/default_clock.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/base/time/default_clock.h
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/chrome/browser/chromeos/night_light/night_light_client_unittest.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/chrome/browser/extensions/test_extension_prefs.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/components/data_reduction_proxy/core/browser/data_reduction_proxy_test_utils.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/components/data_reduction_proxy/core/browser/data_reduction_proxy_test_utils.h
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/components/domain_reliability/test_util.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/components/domain_reliability/test_util.h
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/components/domain_reliability/util.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/components/domain_reliability/util.h
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/components/gcm_driver/gcm_client_impl_unittest.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/net/dns/mdns_client_unittest.cc

Project Member

Comment 36 by bugdroid1@chromium.org, Apr 17 2018

Labels: merge-merged-testbranch
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ee78e4960f315f1432a1c45037f86875e5cf7f31

commit ee78e4960f315f1432a1c45037f86875e5cf7f31
Author: tzik <tzik@chromium.org>
Date: Fri Apr 13 12:25:46 2018

Convert base::Clock::Now() a const method

This method should be a const method to be consistent to NowTicks() in
base::TickClock, which is also converted to a const method at
http://crrev.com/821f0e338ebbe420

Bug: 789079
Change-Id: I6b5c9bcee2d730214298ae7a7136ea6b312ad079
Reviewed-on: https://chromium-review.googlesource.com/1001213
Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
Reviewed-by: Helen Li <xunjieli@chromium.org>
Reviewed-by: Gabriel Charette <gab@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#550598}
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/base/test/simple_test_clock.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/base/test/simple_test_clock.h
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/base/test/test_mock_time_task_runner.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/base/test/test_mock_time_task_runner.h
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/base/time/clock.h
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/base/time/default_clock.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/base/time/default_clock.h
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/chrome/browser/chromeos/night_light/night_light_client_unittest.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/chrome/browser/extensions/test_extension_prefs.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/components/data_reduction_proxy/core/browser/data_reduction_proxy_test_utils.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/components/data_reduction_proxy/core/browser/data_reduction_proxy_test_utils.h
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/components/domain_reliability/test_util.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/components/domain_reliability/test_util.h
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/components/domain_reliability/util.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/components/domain_reliability/util.h
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/components/gcm_driver/gcm_client_impl_unittest.cc
[modify] https://crrev.com/ee78e4960f315f1432a1c45037f86875e5cf7f31/net/dns/mdns_client_unittest.cc

Project Member

Comment 37 by bugdroid1@chromium.org, Jun 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1636332a095f00b78684b004e68028737e61de44

commit 1636332a095f00b78684b004e68028737e61de44
Author: Wez <wez@chromium.org>
Date: Fri Jun 01 20:55:32 2018

Fix potential use-after-free in PrerenderBrowserTest tests.

Tests were creating SimpleTestTickClocks in the test body, causing a
race between the clock and Browser instances being torn-down, leading
to a potential use-after-free in the tests.

TBR=tzik

Bug: 789079,  848373 
Change-Id: Iebc319999915c0794063b0c410bc335908135b85
Reviewed-on: https://chromium-review.googlesource.com/1082961
Reviewed-by: Wez <wez@chromium.org>
Commit-Queue: Wez <wez@chromium.org>
Cr-Commit-Position: refs/heads/master@{#563790}
[modify] https://crrev.com/1636332a095f00b78684b004e68028737e61de44/chrome/browser/prerender/prerender_browsertest.cc

Sign in to add a comment