@Test
public void testQueueMappingWithCurrentUserQueueMappingForaGroup() throws
    Exception {

  CapacitySchedulerConfiguration config =
      new CapacitySchedulerConfiguration();
  config.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class,
      ResourceScheduler.class);
  setupQueueConfiguration(config);
  config.setClass(CommonConfigurationKeys.HADOOP_SECURITY_GROUP_MAPPING,
      TestGroupsCaching.FakeunPrivilegedGroupMapping.class, ShellBasedUnixGroupsMapping.class);
  config.set(CommonConfigurationKeys.HADOOP_USER_GROUP_STATIC_OVERRIDES,
      "a1" +"=" + "agroup" + "");
  Groups.getUserToGroupsMappingServiceWithLoadedConfiguration(config);
  config.set(CapacitySchedulerConfiguration.QUEUE_MAPPING,
      "g:agroup:%user");
  MockRM rm = new MockRM(config);
  rm.start();
  CapacityScheduler cs = ((CapacityScheduler) rm.getResourceScheduler());
  cs.start();
  MockRMAppSubmissionData data =
      MockRMAppSubmissionData.Builder.createWithMemory(GB, rm)
          .withAppName("appname")
          .withUser("a1")
          .withAcls(null)
          .withQueue("default")
          .withUnmanagedAM(false)
          .build();
  RMApp app = MockRMAppSubmitter.submit(rm, data);
  List<ApplicationAttemptId> appsInA1 = cs.getAppsInQueue("a1");
  assertEquals(1, appsInA1.size());
}