static String determineFullyQualifiedClassName(Path baseDir, String basePackageName, Path classFile) {
        String subpackageName = determineSubpackageName(baseDir, classFile);
        String simpleClassName = determineSimpleClassName(classFile);
        return of(basePackageName, subpackageName, simpleClassName)
                .filter(value -> !value.isEmpty()) // default package
                .collect(joining(PACKAGE_SEPARATOR_STRING));
    }
@Test
    void determineFullyQualifiedClassNameFromRootPackage() {
        Path baseDir = Paths.get("path", "to");
        String basePackageName = "";
        Path classFile = Paths.get("path", "to", "com", "example", "app", "App.class");
        String fqn = ClasspathSupport.determineFullyQualifiedClassName(baseDir, basePackageName, classFile);
        assertEquals("com.example.app.App", fqn);
    }