// Path: src/main/java/at/favre/tools/uberadb/ui/FileArgParser.java
// public class FileArgParser {
// 
//     public List<File> parseAndSortUniqueFilesNonRecursive(String[] files, String extensionFilter) {
//         if (files == null) {
//             throw new IllegalArgumentException("input files must not be null");
//         }
// 
//         if (files.length == 0) {
//             return Collections.emptyList();
//         }
// 
//         Set<File> fileSet = new HashSet<>();
// 
//         for (String file : files) {
//             File apkFile = new File(file);
// 
//             if (apkFile.exists() && apkFile.isDirectory()) {
//                 for (File dirFile : apkFile.listFiles()) {
//                     if (isCorrectFile(dirFile, extensionFilter)) {
//                         fileSet.add(dirFile);
//                     }
//                 }
//             } else if (isCorrectFile(apkFile, extensionFilter)) {
//                 fileSet.add(apkFile);
//             } else {
//                 throw new IllegalArgumentException("provided apk path or file '" + file + "' does not exist");
//             }
//         }
// 
//         List<File> resultList = new ArrayList<>(fileSet);
//         Collections.sort(resultList);
//         return resultList;
//     }
// 
//     private static boolean isCorrectFile(File f, String extensionFilter) {
//         if (f != null && f.exists() && f.isFile()) {
//             return FileUtil.getFileExtension(f).equalsIgnoreCase(extensionFilter);
//         }
//         return false;
//     }
// }


import at.favre.tools.uberadb.ui.FileArgParser;
import org.junit.Before;
import org.junit.Test;
import java.io.File;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import static junit.framework.TestCase.assertEquals;
package at.favre.tools.uberadb.parser;




public class FileArgParserTest {
    File signedFolder;
    List<File> sortedSinged;
    private String extFilter = "apk";

    @Before
    public void setUp() throws Exception {
        signedFolder = new File(getClass().getClassLoader().getResource("apks").toURI().getPath());

        sortedSinged = Arrays.asList(signedFolder.listFiles());
        Collections.sort(sortedSinged);
    }

    @Test
    public void testSingleFolder() throws Exception {
// Path: src/main/java/at/favre/tools/uberadb/ui/FileArgParser.java
// public class FileArgParser {
// 
//     public List<File> parseAndSortUniqueFilesNonRecursive(String[] files, String extensionFilter) {
//         if (files == null) {
//             throw new IllegalArgumentException("input files must not be null");
//         }
// 
//         if (files.length == 0) {
//             return Collections.emptyList();
//         }
// 
//         Set<File> fileSet = new HashSet<>();
// 
//         for (String file : files) {
//             File apkFile = new File(file);
// 
//             if (apkFile.exists() && apkFile.isDirectory()) {
//                 for (File dirFile : apkFile.listFiles()) {
//                     if (isCorrectFile(dirFile, extensionFilter)) {
//                         fileSet.add(dirFile);
//                     }
//                 }
//             } else if (isCorrectFile(apkFile, extensionFilter)) {
//                 fileSet.add(apkFile);
//             } else {
//                 throw new IllegalArgumentException("provided apk path or file '" + file + "' does not exist");
//             }
//         }
// 
//         List<File> resultList = new ArrayList<>(fileSet);
//         Collections.sort(resultList);
//         return resultList;
//     }
// 
//     private static boolean isCorrectFile(File f, String extensionFilter) {
//         if (f != null && f.exists() && f.isFile()) {
//             return FileUtil.getFileExtension(f).equalsIgnoreCase(extensionFilter);
//         }
//         return false;
//     }
// }


// Path: src/test/java/at/favre/tools/uberadb/parser/FileArgParserTest.java
import at.favre.tools.uberadb.ui.FileArgParser;
import org.junit.Before;
import org.junit.Test;
import java.io.File;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import static junit.framework.TestCase.assertEquals;

package at.favre.tools.uberadb.parser;




public class FileArgParserTest {
    File signedFolder;
    List<File> sortedSinged;
    private String extFilter = "apk";

    @Before
    public void setUp() throws Exception {
        signedFolder = new File(getClass().getClassLoader().getResource("apks").toURI().getPath());

        sortedSinged = Arrays.asList(signedFolder.listFiles());
        Collections.sort(sortedSinged);
    }

    @Test
    public void testSingleFolder() throws Exception {
        List<File> result = new FileArgParser().parseAndSortUniqueFilesNonRecursive(new String[]{signedFolder.getAbsolutePath()}, extFilter);