@Test
  public void testGetAllAssignedCoachesLite() {

    final Collection<CoachPersonLiteTO> expected =
        Lists.newArrayList(coachPersonLiteTOFor(COACH_1), coachPersonLiteTOFor(ADVISOR_0));

    final PagingWrapper<CoachPersonLiteTO> result1 =
        personService.getAllAssignedCoachesLite(
            SortingAndPaging.createForSingleSortWithPaging(
                ObjectStatus.ACTIVE, 0, 1000, "lastName", "ASC", "lastName"));

    assertCoachPersonLiteTOCollectionsEqual(expected, result1.getRows());
    // zero b/c the request specified no pagination, so impl skips total
    // result size calculation
    assertEquals(2, result1.getResults());

    // now prove that getAllAssignedCoachesLite() doesn't lazily
    // create/return new coaches by creating a fixture where it could do so,
    // run the same method again, then checking that we get the exact
    // same results as before
    final Set<String> newExternalCoachUsernames = addCoachesToExternalDataAndAttributeService(5);

    final PagingWrapper<CoachPersonLiteTO> result2 =
        personService.getAllAssignedCoachesLite(
            SortingAndPaging.createForSingleSortWithPaging(
                ObjectStatus.ACTIVE, 0, 1000, "lastName", "ASC", "lastName"));

    assertCoachPersonLiteTOCollectionsEqual(expected, result2.getRows());
    // zero b/c the request specified no pagination, so impl skips total
    // result size calculation
    assertEquals(2, result2.getResults());
  }