@Test
public void testGroupResourcePlacementService() throws Throwable {
verifyService(
FactoryService.create(GroupResourcePlacementService.class),
GroupResourcePlacementState.class,
(prefix, index) -> {
GroupResourcePlacementState reservationState =
new GroupResourcePlacementState();
reservationState.name = prefix + "reservation-test";
reservationState.tenantLinks = Collections.singletonList("testGroup");
reservationState.resourcePoolLink = resourcePool.documentSelfLink;
reservationState.maxNumberInstances = 10;
reservationState.customProperties = new HashMap<>();
return reservationState;
},
(prefix, serviceDocument) -> {
GroupResourcePlacementState reservationState =
(GroupResourcePlacementState) serviceDocument;
assertTrue(reservationState.name.startsWith(prefix + "reservation-test"));
assertEquals(Collections.singletonList("testGroup"),
reservationState.tenantLinks);
assertEquals(resourcePool.documentSelfLink, reservationState.resourcePoolLink);
assertEquals(10, reservationState.maxNumberInstances);
assertEquals(10, reservationState.availableInstancesCount);
assertEquals(0, reservationState.allocatedInstancesCount);
});
}