LeagueDetails { public void initialize(List<? extends Club> allClubs) { service.create(allClubs); service.create(leagueRoundGenerator.generateRounds(allClubs)); } LeagueDetails(ElifutDataStore persistenceService, ClubDataStore clubDataStore,
      LeagueRoundGenerator leagueRoundGenerator, MatchResultGenerator generator); void initialize(List<? extends Club> allClubs); LeagueRound nextRound(); boolean haveRoundsLeft(); int clubPosition(Club club); LeagueRound executeRound(LeagueRound round); Observable<? extends List<? extends Club>> clubsObservable(); Observable<? extends List<? extends LeagueRound>> roundsObservable(); List<? extends Club> clubs(); List<? extends LeagueRound> rounds();  }
@Test public void testInitialize() { when(roundGenerator.generateRounds(clubs)).thenReturn(rounds); leagueDetails.initialize(clubs); assertThat(persistenceService.query(AutoValueClasses.CLUB)).isEqualTo(clubs); assertThat(leagueDetails.rounds()).isEqualTo(rounds); }