@Test
public void hashCode_doesNotCollide() {

  GoogleAdsClient clientA =
      GoogleAdsClient.newBuilder()
          .setCredentials(fakeCredentials)
          .setDeveloperToken(DEVELOPER_TOKEN)
          .setEnableGeneratedCatalog(enabledGeneratedCatalog)
          .build();
  GoogleAdsClient clientB =
      GoogleAdsClient.newBuilder()
          .setCredentials(fakeCredentials)
          .setDeveloperToken(DEVELOPER_TOKEN + "asdf")
          .setEnableGeneratedCatalog(enabledGeneratedCatalog)
          .build();
  // Granted there could be hash collisions, but this should not happen for this test case.
  assertNotEquals(
      "Clients with distinct params should have distinct hashCodes",
      clientA.hashCode(),
      clientB.hashCode());
}