BranchStatisticService { public List<TextUnitDTO> getTextUnitDTOsForBranch(Branch branch) { logger.debug("Get text units for branch: {} ({})", branch.getId(), branch.getName()); List<Long> branchTmTextUnitIds = assetTextUnitToTMTextUnitRepository.findByBranch(branch); List<TextUnitDTO> textUnitDTOS; if (branchTmTextUnitIds.isEmpty()) { textUnitDTOS = Collections.emptyList(); } else { TextUnitSearcherParameters textUnitSearcherParameters = new TextUnitSearcherParameters(); textUnitSearcherParameters.setRepositoryIds(branch.getRepository().getId()); textUnitSearcherParameters.setTmTextUnitIds(branchTmTextUnitIds); textUnitSearcherParameters.setForRootLocale(true); textUnitDTOS = textUnitSearcher.search(textUnitSearcherParameters); } return textUnitDTOS; }  void computeAndSaveBranchStatistics(Long repositoryId); void computeAndSaveBranchStatistics(Branch branch); List<TextUnitDTO> getTextUnitDTOsForBranch(Branch branch);  }
@Test public void getBranchTextUnits() throws Exception { BranchTestData branchTestData = new BranchTestData(testIdWatcher); logger.debug("In master branch"); List<TextUnitDTO> textUnitDTOsForBranchMaster = branchStatisticService.getTextUnitDTOsForBranch(branchTestData.getMaster()); assertEquals("string1", textUnitDTOsForBranchMaster.get(0).getName()); assertEquals("string2", textUnitDTOsForBranchMaster.get(1).getName()); assertEquals(2, textUnitDTOsForBranchMaster.size()); logger.debug("In branch1"); List<TextUnitDTO> textUnitDTOsForBranch1 = branchStatisticService.getTextUnitDTOsForBranch(branchTestData.getBranch1()); assertEquals("string3", textUnitDTOsForBranch1.get(0).getName()); assertEquals(1, textUnitDTOsForBranch1.size()); logger.debug("In branch2"); List<TextUnitDTO> textUnitDTOsForBranch2 = branchStatisticService.getTextUnitDTOsForBranch(branchTestData.getBranch2()); assertEquals("string4", textUnitDTOsForBranch2.get(0).getName()); assertEquals("string5", textUnitDTOsForBranch2.get(1).getName()); assertEquals(2, textUnitDTOsForBranch2.size()); }