### Question:
GithubReleaseChecker { public Optional<String> getNewerRelease(String releaseToCheck) throws IOException { ReleaseResponse response = fetchLatestRelease(); return Optional.of(response.getTagName()) .filter(rel -> compareVersions(releaseToCheck, rel) < 0); }  Optional<String> getNewerRelease(String releaseToCheck); static int compareVersions(String version1, String version2);  }### Answer:
@Test void test() throws IOException { assertTrue(new GithubReleaseChecker("warmuuh", "hardwire").getNewerRelease("0.0.1").isPresent()); }
@Test void testUnusualVersion() throws IOException { assertTrue(new GithubReleaseChecker("warmuuh", "hardwire").getNewerRelease("0.0.1.beta").isPresent()); }