errors.add(SAMValidationError.Type.MATE_NOT_FOUND); v.setErrorsToIgnore(errors); v.validateSamFileSummary(reader, ReferenceSequenceFileFactory.getReferenceSequenceFile(params.reference)); log.info("Elapsed seconds: " + progress.getElapsedSeconds());
private Histogram<String> executeValidationWithErrorIgnoring(final SamReader samReader, final ReferenceSequenceFile reference, final IndexValidationStringency stringency, final Collection<SAMValidationError.Type> ignoringError, final boolean skipMateValidation) throws IOException { final File outFile = File.createTempFile("validation", ".txt"); outFile.deleteOnExit(); final PrintWriter out = new PrintWriter(outFile); final SamFileValidator samFileValidator = new SamFileValidator(out, 8000); samFileValidator.setIndexValidationStringency(stringency).setErrorsToIgnore(ignoringError); samFileValidator.setSkipMateValidation(skipMateValidation); samFileValidator.validateSamFileSummary(samReader, reference); final LineNumberReader reader = new LineNumberReader(new FileReader(outFile)); if (reader.readLine().equals("No errors found")) { return new Histogram<>(); } final MetricsFile<MetricBase, String> outputFile = new MetricsFile<>(); outputFile.read(new FileReader(outFile)); Assert.assertNotNull(outputFile.getHistogram()); return outputFile.getHistogram(); }
@Test(dataProvider = "testCleanSamDataProvider") public void testCleanSam(final String samFile, final String expectedCigar) throws IOException { final File cleanedFile = File.createTempFile(samFile + ".", ".sam"); cleanedFile.deleteOnExit(); final String[] args = new String[]{ "INPUT=" + new File(TEST_DATA_DIR, samFile).getAbsolutePath(), "OUTPUT=" + cleanedFile.getAbsolutePath() }; Assert.assertEquals(runPicardCommandLine(args), 0); final SamFileValidator validator = new SamFileValidator(new PrintWriter(System.out), 8000); validator.setIgnoreWarnings(true); validator.setVerbose(true, 1000); validator.setErrorsToIgnore(Arrays.asList(SAMValidationError.Type.MISSING_READ_GROUP)); SamReader samReader = SamReaderFactory.makeDefault().validationStringency(ValidationStringency.LENIENT).open(cleanedFile); final SAMRecord rec = samReader.iterator().next(); samReader.close(); Assert.assertEquals(rec.getCigarString(), expectedCigar); samReader = SamReaderFactory.makeDefault().validationStringency(ValidationStringency.LENIENT).open(cleanedFile); final boolean validated = validator.validateSamFileVerbose(samReader, null); samReader.close(); Assert.assertTrue(validated, "ValidateSamFile failed"); }
validator.setErrorsToIgnore(Arrays.asList(SAMValidationError.Type.MISSING_READ_GROUP)); SamReaderFactory factory = SamReaderFactory.makeDefault().validationStringency(ValidationStringency.LENIENT); SamReader samReader = factory.open(getOutput());
validator.setErrorsToIgnore(IGNORE); validator.setSkipMateValidation(SKIP_MATE_VALIDATION); validator.setBisulfiteSequenced(IS_BISULFITE_SEQUENCED);
validator.setErrorsToIgnore(IGNORE); validator.setSkipMateValidation(SKIP_MATE_VALIDATION); validator.setBisulfiteSequenced(IS_BISULFITE_SEQUENCED);