@Test
  public void testBalancerWithNullLocalityManager() {
    Set<TaskModel> taskModels = generateTaskModels(3);

    Set<ContainerModel> groupContainers = new GroupByContainerCount(3).group(taskModels);
    Set<ContainerModel> balanceContainers = new GroupByContainerCount(3).balance(taskModels, null);

    // Results should be the same as calling group()
    assertEquals(groupContainers, balanceContainers);
  }
Verifies the ability to have a custom task-container mapping that is *deliberately* unbalanced.

Before:
 C0  C1
--------
 T0  T1
     T2
     T3
     T4
     T5

 After:
 C0  C1  C2
------------
 T0  T1  T4
 T5  T2  T3

 The key here is that C0, which is not one of the new containers was under-allocated.
 This is an important case because this scenario, while impossible with GroupByContainerCount.group()
 could occur when the grouper class is switched or if there is a custom mapping.
samza-core/src/test/java/org/apache/samza/container/grouper/task/TestGroupByContainerCount.java