@Override
    public Collection<FileSourceSplit> enumerateSplits(Path[] paths, int minDesiredSplits)
            throws IOException {
        final ArrayList<FileSourceSplit> splits = new ArrayList<>();

        for (Path path : paths) {
            final FileSystem fs = path.getFileSystem();
            final FileStatus status = fs.getFileStatus(path);
            addSplitsForPath(status, fs, splits);
        }

        return splits;
    }
@Test
    void testDefaultHiddenFilesFilter() throws Exception {
        final Path[] testPaths =
                new Path[] {
                    new Path("testfs:///visiblefile"),
                    new Path("testfs:///.hiddenfile1"),
                    new Path("testfs:///_hiddenfile2")
                };
        testFs = TestingFileSystem.createWithFiles("testfs", testPaths);
        testFs.register();

        final NonSplittingRecursiveEnumerator enumerator = createEnumerator();
        final Collection<FileSourceSplit> splits =
                enumerator.enumerateSplits(new Path[] {new Path("testfs:///")}, 1);

        assertThat(toPaths(splits))
                .isEqualTo(Collections.singletonList(new Path("testfs:///visiblefile")));
    }