ProfileSyncServiceHarness interacts with //components/signin to set the state of the primary account for integration tests. As those integration tests have started to interact with IdentityManager, we have changed ProfileSyncServiceHarness to go through identity_test_utils.h to ensure that the necessary state updates get made in IdentityManager as well as the //components/signin classes. Once the production and test code that uses PSSHarness no longer directly uses those //components/signin classes, PSSHarness can and should be changed to use the preferred solution of IdentityTestEnvironment. Until that time, that change is not possible, as IdentityTestEnvironment creates its own SigninManager/PO2TS/IdentityManager instances internally.
Note that as part of this change it will likely be necessary to construct an IdentityTestEnvironment instance with an existing IdentityManager instance, so that the //chrome IdentityManager instance can be passed in. That will be an interesting challenge in itself.
Note that I marked this as blocked on the conversion of Sync, but it might be blocked on a broader set of conversions than that.
Comment 1 by blundell@chromium.org
, Feb 21 2018