public void testUpdate() throws Exception {
// Get the AdGroupService.
adGroupService = user.getService(AdWordsService.V201008.ADGROUP_SERVICE);
// Create ad group.
AdGroup adGroup = new AdGroup();
adGroup.setId(adGroupId);
// Create updated ad group bid.
ManualCPCAdGroupBids adGroupBids = new ManualCPCAdGroupBids();
adGroupBids.setKeywordMaxCpc(new Bid(new Money(null, 2000000L)));
adGroup.setBids(adGroupBids);
// Create operations.
AdGroupOperation operation = new AdGroupOperation();
operation.setOperand(adGroup);
operation.setOperator(Operator.SET);
AdGroupOperation[] operations = new AdGroupOperation[] { operation };
// Update ad group.
AdGroupReturnValue result = adGroupService.mutate(operations);
AdGroup testAdGroup = result.getValue()[0];
// Exclude generated fields.
adGroup.setCampaignName(testAdGroup.getCampaignName());
adGroup.setCampaignId(testAdGroup.getCampaignId());
adGroup.setStatus(testAdGroup.getStatus());
adGroup.setName(testAdGroup.getName());
adGroup.getBids().setAdGroupBidsType(
(testAdGroup.getBids().getAdGroupBidsType()));
((ManualCPCAdGroupBids) adGroup.getBids())
.setEnhancedCpcEnabled(((ManualCPCAdGroupBids) testAdGroup
.getBids()).getEnhancedCpcEnabled());
((ManualCPCAdGroupBids) adGroup.getBids())
.getKeywordMaxCpc()
.getAmount()
.setComparableValueType(
((ManualCPCAdGroupBids) testAdGroup.getBids())
.getKeywordMaxCpc().getAmount()
.getComparableValueType());
TestUtils.assertDeepReflectionEquals(adGroup, testAdGroup);
}