use of org.ow2.proactive.utils.Criteria in project scheduling by ow2-proactive.
the class TestLoadJobs method setUp.
@Before
public void setUp() throws Exception {
logger.setLevel(Level.INFO);
Scheduler scheduler = schedulerHelper.getSchedulerInterface();
List<JobInfo> jobs = scheduler.getJobs(0, 1000, criteria(true, true, true, true), SORT_BY_ID_ASC).getList();
for (JobInfo job : jobs) {
scheduler.removeJob(job.getJobId());
}
}
use of org.ow2.proactive.utils.Criteria in project scheduling by ow2-proactive.
the class TestRMProxy method requestWithExtraNodes.
private void requestWithExtraNodes(RMProxy proxy, ResourceManager rm) throws Exception {
log("Request NodeSet with extra nodes");
TopologyDescriptor topology = TopologyDescriptor.SINGLE_HOST_EXCLUSIVE;
Criteria criteria = new Criteria(1);
criteria.setTopology(topology);
NodeSet nodeSet = proxy.getNodes(criteria);
PAFuture.waitFor(nodeSet);
assertEquals(1, nodeSet.size());
Assert.assertNotNull("Extra nodes are expected", nodeSet.getExtraNodes());
assertEquals(NODES_NUMBER - 1, nodeSet.getExtraNodes().size());
assertEquals(0, rm.getState().getFreeNodesNumber());
proxy.releaseNodes(nodeSet);
waitWhenNodesAreReleased(NODES_NUMBER);
assertEquals(NODES_NUMBER, rm.getState().getFreeNodesNumber());
}
use of org.ow2.proactive.utils.Criteria in project scheduling by ow2-proactive.
the class TestRMProxy method requestReleaseAllNodes.
private void requestReleaseAllNodes(RMProxy proxy, ResourceManager rm) throws Exception {
log("Request and release all nodes");
List<NodeSet> nodeSets = new ArrayList<>();
for (int i = 0; i < NODES_NUMBER; i++) {
nodeSets.add(proxy.getNodes(new Criteria(1)));
}
for (NodeSet nodeSet : nodeSets) {
waitWhenNodeSetAcquired(nodeSet, 1);
proxy.releaseNodes(nodeSet);
}
waitWhenNodesAreReleased(NODES_NUMBER);
assertEquals(NODES_NUMBER, rm.getState().getFreeNodesNumber());
}
use of org.ow2.proactive.utils.Criteria in project scheduling by ow2-proactive.
the class TestRMProxy method testSplitNodeSet.
private void testSplitNodeSet(RMProxy proxy, ResourceManager rm) throws Exception {
log("Request as single NodeSet, release it as two NodeSets");
NodeSet nodeSet = proxy.getNodes(new Criteria(3));
waitWhenNodeSetAcquired(nodeSet, 3);
assertEquals(NODES_NUMBER - 3, rm.getState().getFreeNodesNumber());
NodeSet nodeSet1 = new NodeSet();
nodeSet1.add(nodeSet.remove(0));
NodeSet nodeSet2 = new NodeSet();
nodeSet2.add(nodeSet.remove(0));
nodeSet2.add(nodeSet.remove(0));
proxy.releaseNodes(nodeSet1);
waitWhenNodesAreReleased(1);
assertEquals(NODES_NUMBER - 2, rm.getState().getFreeNodesNumber());
proxy.releaseNodes(nodeSet2);
waitWhenNodesAreReleased(2);
assertEquals(NODES_NUMBER, rm.getState().getFreeNodesNumber());
}
use of org.ow2.proactive.utils.Criteria in project scheduling by ow2-proactive.
the class SelectionManagerTest method testSelectNodesWith10Node.
@Test
public void testSelectNodesWith10Node() {
RMCore rmCore = newMockedRMCore(10);
SelectionManager selectionManager = createSelectionManager(rmCore);
Criteria crit = new Criteria(10);
crit.setTopology(TopologyDescriptor.ARBITRARY);
crit.setScripts(null);
crit.setBlackList(null);
crit.setBestEffort(true);
Client mockedClient = mock(Client.class);
NodeSet nodeSet = selectionManager.selectNodes(crit, mockedClient);
assertEquals(10, nodeSet.size());
}
Aggregations