[Sync] Rework unit tests for ChromeInvalidationClient

In particular, add unit tests that would have caught bug 139424.

Dep-inject InvalidationClient into ChromeInvalidationClient.

Use the function name 'UpdateRegisteredIds' consistently.

Replace some mocks with fakes.

BUG=139424


Review URL: https://chromiumcodereview.appspot.com/10827133

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@150665 0039d316-1c4b-4281-b951-d872f2087c98
  void FireInvalidateUnknownVersion(const char* type_name) {
  void FireInvalidateUnknownVersion(const ObjectId& object_id) {
    const AckHandle ack_handle("fakedata_unknown");
    fake_invalidation_client_->ClearAckedHandles();
    client_.InvalidateUnknownVersion(fake_invalidation_client_, object_id,
                                      ack_handle);
    EXPECT_TRUE(fake_invalidation_client_->IsAckedHandle(ack_handle));
   }

  void FireInvalidateUnknownVersion(const char* type_name) {
    const invalidation::ObjectId object_id(
        ipc::invalidation::ObjectSource::CHROME_SYNC, type_name);
    invalidation::AckHandle ack_handle("fakedata");
    EXPECT_CALL(mock_invalidation_client_, Acknowledge(ack_handle));
    client_.InvalidateUnknownVersion(&mock_invalidation_client_, object_id,
                                      ack_handle);
   }
