.targetType(ScalingPolicyTargetType.INCREMENTAL)
.target("1")
.build();
scalingPolicies.add(scalingPolicy);
Group g = api.create(groupConfiguration, launchConfiguration, scalingPolicies);
/*
* Check request
*/
assertAuthentication(server);
assertRequest(server.takeRequest(), "POST", "/v1.0/888888/groups", "/autoscale_groups_create_request.json");
/*
* Check response
*/
assertNotNull(g);
assertEquals(g.getId(),"6791761b-821a-4d07-820d-0b2afc7dd7f6");
assertEquals(g.getLinks().size(), 1);
assertEquals(g.getLinks().get(0).getHref().toString(), "https://ord.autoscale.api.rackspacecloud.com/v1.0/829409/groups/6791761b-821a-4d07-820d-0b2afc7dd7f6/");
assertEquals(g.getLinks().get(0).getRelation(), Link.Relation.SELF);
assertEquals(g.getScalingPolicies().get(0).getId(), "dceb14ac-b2b3-4f06-aac9-a5b6cd5d40e1");
assertEquals(g.getScalingPolicies().get(0).getLinks().size(), 1);
assertEquals(g.getScalingPolicies().get(0).getLinks().get(0).getHref().toString(), "https://ord.autoscale.api.rackspacecloud.com/v1.0/829409/groups/6791761b-821a-4d07-820d-0b2afc7dd7f6/policies/dceb14ac-b2b3-4f06-aac9-a5b6cd5d40e1/");
assertEquals(g.getScalingPolicies().get(0).getLinks().get(0).getRelation(), Link.Relation.SELF);
assertEquals(g.getScalingPolicies().get(0).getCooldown(), 0);
assertEquals(g.getScalingPolicies().get(0).getTarget(), "1");
assertEquals(g.getScalingPolicies().get(0).getTargetType(), ScalingPolicyTargetType.INCREMENTAL);
assertEquals(g.getScalingPolicies().get(0).getType(), ScalingPolicyType.WEBHOOK);
assertEquals(g.getScalingPolicies().get(0).getName(), "scale up by 1");
assertEquals(g.getLaunchConfiguration().getLoadBalancers().size(), 1);
assertEquals(g.getLaunchConfiguration().getLoadBalancers().get(0).getId(), 9099);
assertEquals(g.getLaunchConfiguration().getLoadBalancers().get(0).getPort(), 8080);
assertEquals(g.getLaunchConfiguration().getServerName(), "autoscale_server");
assertEquals(g.getLaunchConfiguration().getServerImageRef(), "0d589460-f177-4b0f-81c1-8ab8903ac7d8");
assertEquals(g.getLaunchConfiguration().getServerFlavorRef(), "2");
assertEquals(g.getLaunchConfiguration().getServerDiskConfig(), "AUTO");
assertEquals(g.getLaunchConfiguration().getPersonalities().size(), 1);
assertEquals(g.getLaunchConfiguration().getPersonalities().get(0).getPath(), "/root/.csivh");
assertEquals(g.getLaunchConfiguration().getPersonalities().get(0).getContents(), "VGhpcyBpcyBhIHRlc3QgZmlsZS4=");
assertEquals(g.getLaunchConfiguration().getNetworks().size(), 2);
assertEquals(g.getLaunchConfiguration().getNetworks().get(0), "11111111-1111-1111-1111-111111111111");
assertEquals(g.getLaunchConfiguration().getNetworks().get(1), "00000000-0000-0000-0000-000000000000");
assertEquals(g.getLaunchConfiguration().getServerMetadata().size(), 3);
assertTrue(g.getLaunchConfiguration().getServerMetadata().containsKey("build_config"));
assertTrue(g.getLaunchConfiguration().getServerMetadata().containsValue("core"));
assertEquals(g.getLaunchConfiguration().getType(), LaunchConfigurationType.LAUNCH_SERVER);
assertEquals(g.getGroupConfiguration().getMaxEntities(), 10);
assertEquals(g.getGroupConfiguration().getCooldown(), 360);
assertEquals(g.getGroupConfiguration().getName(), "testscalinggroup198547");
assertEquals(g.getGroupConfiguration().getMinEntities(), 0);
assertEquals(g.getGroupConfiguration().getMetadata().size(), 2);
assertTrue(g.getGroupConfiguration().getMetadata().containsKey("gc_meta_key_2"));
assertTrue(g.getGroupConfiguration().getMetadata().containsValue("gc_meta_value_2"));
} finally {
server.shutdown();
}
}