@Test public void testDetermineFileGroupIdentifierToFileGroupMap() throws Exception { // String base = getBase(); List<File> fileList = new ArrayList<File>(); fileList.add(new File("C:\\temp\\admin_de_DE.properties")); fileList.add(new File("C:\\temp\\admin_en_US.properties")); fileList.add(new File("C:\\temp\\article_de_DE.properties")); fileList.add(new File("C:\\temp\\article_en_US.properties")); fileList.add(new File("C:\\temp\\article_de.properties")); fileList.add(new File("C:\\temp\\article_en.properties")); // FileGrouper fileGrouper = new FileGrouper(); try { fileGrouper.addAllFiles(fileList); fileGrouper.setGroupingPatternReplacementToken("{locale}"); fileGrouper.setGroupingPatternString("(.*?_(\\w{2,3}_\\w{2,3}|\\w{2,3})|.*())\\.\\w*"); fileGrouper.setGroupingPatternGroupingGroupIndexList(Arrays.asList(2, 3)); } catch (Exception e) { e.printStackTrace(); Assert.fail(); } // Map<String, FileGroup> fileGroupIdentifierToFileGroupMap = fileGrouper.determineFileGroupIdentifierToFileGroupMap(); // assertEquals(2, fileGroupIdentifierToFileGroupMap.size()); Set<String> fileGroupIdentifierSet = fileGroupIdentifierToFileGroupMap.keySet(); assertTrue(fileGroupIdentifierSet.contains(base + "C:\\temp\\admin_{locale}.properties")); assertTrue(fileGroupIdentifierSet.contains(base + "C:\\temp\\article_{locale}.properties")); // { // FileGroup fileGroup = fileGroupIdentifierToFileGroupMap.get(base + "C:\\temp\\admin_{locale}.properties"); // Map<String, File> groupTokenToFileMap = fileGroup.getGroupTokenToFileMap(); assertEquals(2, groupTokenToFileMap.size()); assertTrue(groupTokenToFileMap.containsKey("de_DE")); assertTrue(groupTokenToFileMap.containsKey("en_US")); } { // FileGroup fileGroup = fileGroupIdentifierToFileGroupMap.get(base + "C:\\temp\\article_{locale}.properties"); // Map<String, File> groupTokenToFileMap = fileGroup.getGroupTokenToFileMap(); assertEquals(4, groupTokenToFileMap.size()); assertTrue(groupTokenToFileMap.containsKey("de_DE")); assertTrue(groupTokenToFileMap.containsKey("en_US")); assertTrue(groupTokenToFileMap.containsKey("de")); assertTrue(groupTokenToFileMap.containsKey("en")); } }
@Override public String getGroupName(FileGroup fileGroup) { return fileGroup.getUpdateName(); }
@Override public String getGroupName(FileGroup fileGroup) { return fileGroup.getStatusName(); }