The Identity Service will be needed on iOS, as the underlying signin code is deeply used on iOS. It thus serves as a good first service to integrate on iOS (after the service manager).
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/055484e20ec54cb4066f531fb2ff234caa814caa commit 055484e20ec54cb4066f531fb2ff234caa814caa Author: Colin Blundell <blundell@chromium.org> Date: Fri Jun 16 06:54:17 2017 Bring up services_unittests on iOS As a first step to integrating services on iOS, this CL brings up an abbreviated version of services_unittests on iOS. In particular, we bring up the Identity Service unittests; we choose the Identity Service as an initial candidate as (a) we know we'll need it on iOS and (b) the author of this CL is also the owner of the Identity Service :). Most of the work is in simply eliding concerns that are not relevant on iOS, namely, infrastructure for running in multiprocess mode that is not present on iOS. Note that services will likely never run multiprocess on iOS due to usual restrictions on iOS apps. Similarly, the "service" GN template does not work out of the box on iOS, and it does not seem like standalone service binaries make sense on iOS. For this reason, some surgery on GN files has to be done to ensure that no "service" targets are visible on iOS. By design, the bots build with no targets specified, resulting in the building of every target that is visible, meaning that it isn't sufficient to ensure that these targets aren't referenced in the dependency tree :(. Tested locally as follows: $ ninja -C out/Debug-iphonesimulator/ services_unittests $ ./out/Debug-iphonesimulator/iossim ./out/Debug-iphonesimulator/services_unittests.app/ ... [==========] Running 2 tests from 1 test case. ... [----------] 2 tests from IdentityManagerTest ... [ PASSED ] 2 tests. TBR=jam Bug: 731587 , 731581 Change-Id: I69090f69460f455e79232734d419e7731f01129f Reviewed-on: https://chromium-review.googlesource.com/532958 Commit-Queue: Colin Blundell <blundell@chromium.org> Reviewed-by: Ken Rockot <rockot@chromium.org> Cr-Commit-Position: refs/heads/master@{#479973} [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/BUILD.gn [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/chrome/test/base/mojo_test_connector.cc [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/components/filesystem/BUILD.gn [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/BUILD.gn [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/BUILD.gn [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/background/background_service_manager.cc [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/background/background_service_manager.h [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/embedder/main.cc [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/public/cpp/BUILD.gn [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/public/cpp/test/BUILD.gn [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/runner/host/BUILD.gn [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/runner/host/service_process_launcher.cc [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/runner/host/service_process_launcher.h [add] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/runner/host/service_process_launcher_delegate.h [add] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/runner/host/service_process_launcher_factory.h [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/runner/host/service_process_launcher_unittest.cc [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/service_manager.cc [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/service_manager.h [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/standalone/BUILD.gn [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/standalone/DEPS [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/standalone/context.cc [modify] https://crrev.com/055484e20ec54cb4066f531fb2ff234caa814caa/services/service_manager/standalone/context.h
Comment 1 by blundell@chromium.org
, Jun 9 2017