@Test public void testRemoveEnablesAppOnCousinQueue() { FSLeafQueue leaf1 = queueManager.getLeafQueue("root.queue1.subqueue1.leaf1", true); FSLeafQueue leaf2 = queueManager.getLeafQueue("root.queue1.subqueue2.leaf2", true); queueMaxApps.put("root.queue1", 2); FSAppAttempt app1 = addApp(leaf1, "user"); addApp(leaf2, "user"); addApp(leaf2, "user"); assertEquals(1, leaf1.getRunnableAppSchedulables().size()); assertEquals(1, leaf2.getRunnableAppSchedulables().size()); assertEquals(1, leaf2.getNonRunnableAppSchedulables().size()); removeApp(app1); assertEquals(0, leaf1.getRunnableAppSchedulables().size()); assertEquals(2, leaf2.getRunnableAppSchedulables().size()); assertEquals(0, leaf2.getNonRunnableAppSchedulables().size()); }
@Test public void testRemoveEnablesOneByQueueOneByUser() { FSLeafQueue leaf1 = queueManager.getLeafQueue("root.queue1.leaf1", true); FSLeafQueue leaf2 = queueManager.getLeafQueue("root.queue1.leaf2", true); queueMaxApps.put("root.queue1.leaf1", 2); userMaxApps.put("user1", 1); FSAppAttempt app1 = addApp(leaf1, "user1"); addApp(leaf1, "user2"); addApp(leaf1, "user3"); addApp(leaf2, "user1"); assertEquals(2, leaf1.getRunnableAppSchedulables().size()); assertEquals(1, leaf1.getNonRunnableAppSchedulables().size()); assertEquals(1, leaf2.getNonRunnableAppSchedulables().size()); removeApp(app1); assertEquals(2, leaf1.getRunnableAppSchedulables().size()); assertEquals(1, leaf2.getRunnableAppSchedulables().size()); assertEquals(0, leaf1.getNonRunnableAppSchedulables().size()); assertEquals(0, leaf2.getNonRunnableAppSchedulables().size()); }