void (LauncherSession session) { if (!includeFirstLast || suiteStarted == 0) return; try { Assertions.assertAll(() -> { boolean testDynamicExtensions = SystemProperties.getBooleanProperty("intellij.test.all.dynamic.extension.points", false); if (testDynamicExtensions) { DynamicExtensionPointsTester.checkDynamicExtensionPoints(Functions.id()); } }, () -> { TestApplicationManager.testProjectLeak(); }, () -> { Collection<Language> languages = Language.getRegisteredLanguages(); Map<String, Language> displayNames = new HashMap<>(); for (Language language : languages) { Language prev = displayNames.put(language.getDisplayName(), language); if (prev != null) { Assertions.fail(prev + " ("+prev.getClass()+") and " + language +" ("+language.getClass()+") both have identical display name: "+language.getDisplayName()); } } }); } finally { if (suiteStarted != 0) { long testSuiteDuration = System.nanoTime() - suiteStarted; System.out.printf("##teamcity[buildStatisticValue key='ideaTests.totalTimeMs' value='%d']%n", testSuiteDuration / 1000000); } LightPlatformTestCase.reportTestExecutionStatistics(); } }