public static Properties getProperties(File file) throws AnalysisException {
        try (BufferedReader utf8Reader = Files.newBufferedReader(file.toPath(), StandardCharsets.UTF_8)) {
            return getProperties(utf8Reader);
        } catch (IOException | IllegalArgumentException e) {
            throw new AnalysisException("Error parsing PyPA core-metadata file", e);
        }
    }
@Test
    public void getProperties_should_throw_exception_for_too_large_major() throws IOException {
        try {
            PyPACoreMetadataParser.getProperties(new BufferedReader(new StringReader("Metadata-Version: 3.0")));
            Assert.fail("Expected IllegalArgumentException for too large major in Metadata-Version");
        } catch (IllegalArgumentException e) {
            Assert.assertTrue(e.getMessage().contains("Unsupported PyPA Wheel metadata"));
        }
    }