@Test
public void testPerQueueDisablePreemptionRootDisablesAll() {

  int[][] qData = new int[][] {
      //  /    A              D              G    
      //            B    C         E    F         H    I
      {1000, 500, 250, 250, 250, 100, 150, 250, 100, 150 },  // abs
      {1000,1000,1000,1000,1000,1000,1000,1000,1000,1000 },  // maxCap
      {1000,  20,   0,  20, 490, 240, 250, 490, 240, 250 },  // used
      { 200, 200, 200,   0,   0,   0,   0,   0,   0,   0 },  // pending
      {   0,   0,   0,   0,   0,   0,   0,   0,   0,   0 },  // reserved
      //          appA appB      appC appD      appE appF
      {   6,   2,   1,   1,   2,   1,   1,   2,   1,   1 },  // apps
      {  -1,  -1,   1,   1,  -1,   1,   1,  -1,   1,   1 },  // req granulrity
      {   3,   2,   0,   0,   2,   0,   0,   2,   0,   0 },  // subqueues
 };
  conf.setPreemptionDisabled("root", true);
  ProportionalCapacityPreemptionPolicy policy = buildPolicy(qData);
  policy.editSchedule();
  // All queues should be non-preemptable, so request should starve.
  verify(mDisp, never()).handle(argThat(new IsPreemptionRequestFor(appB))); // queueC
  verify(mDisp, never()).handle(argThat(new IsPreemptionRequestFor(appC))); // queueE
  verify(mDisp, never()).handle(argThat(new IsPreemptionRequestFor(appD))); // queueB
  verify(mDisp, never()).handle(argThat(new IsPreemptionRequestFor(appE))); // queueH
  verify(mDisp, never()).handle(argThat(new IsPreemptionRequestFor(appF))); // queueI
}