0

In my maven java project, I have a directory with files:

src/test/resources/data/files/test.txt

this is a test file under test resources.

I have a class that looks for the file if it is available:

public class MyPoller{

    private boolean isFileAvailable(String file) {
        try {
            ClassPathResource classPathResource = new ClassPathResource(file);
            boolean exists = Files.exists(Paths.get(classPathResource.getFile().getPath()));
            if (exists) {
                FileTime modFileTime = Files.getLastModifiedTime(Paths.get(classPathResource.getFile().getPath()));
                long modFileMinutes = modFileTime.to(TimeUnit.MINUTES);
                long minutes = FileTime.from(Instant.now()).to(TimeUnit.MINUTES);

                return minutes - modFileMinutes >= 5;
            }

        } catch (IOException e) {
            LOGGER.error("Failed to check file is available", e);
            return false;
        }

        return false;
    }
}

It uses org.springframework.core.io.ClassPathResource;

From my cucumber tests (feature files) I pass the file path to isFileAvailable() as data\files\test.txt and the file is found and returns true and the test is successful.

However, when I execute mvn clean test, the condition in the method is failing and my build is not successful. I am not sure what the issue is and if I have missed something.

M06H
  • 1,675
  • 3
  • 36
  • 76

0 Answers0