public Set<Device> getDevicesFromPath(String path) throws IOException {
    MutableInt counter = new MutableInt(0);
    try (Stream<Path> stream = Files.walk(Paths.get(path), 1)) {
      return stream.filter(p -> p.toFile().getName().startsWith("veslot"))
            .map(p -> toDevice(p, counter))
            .collect(Collectors.toSet());
    }
  }
@Test
  public void testNonVESlotFilesAreSkipped() throws IOException {
    createVeSlotFile(0);
    createOsStateFile(0);
    createFile("abcde");
    createFile("vexlot");
    createFile("xyzveslot");

    when(mockCommandExecutor.getOutput()).thenReturn(
        "8:1:character special file",
        "9:1:character special file",
        "10:1:character special file",
        "11:1:character special file",
        "12:1:character special file");
    when(udevUtil.getSysPath(anyInt(), anyChar())).thenReturn(testFolder);

    Set<Device> devices = discoverer.getDevicesFromPath(testFolder);

    assertEquals("Number of devices", 1, devices.size());
    Device device = devices.iterator().next();
    assertEquals("Device ID", 0, device.getId());
    assertEquals("Major number", 8, device.getMajorNumber());
    assertEquals("Minor number", 1, device.getMinorNumber());
    assertEquals("Status", "ONLINE", device.getStatus());
    assertTrue("Device is not healthy", device.isHealthy());
  }