From 3c01a887d7e9abb272da500b742937821c4fbd00 Mon Sep 17 00:00:00 2001 From: Denis Verkhoturov Date: Fri, 22 Sep 2017 16:01:10 +0300 Subject: [PATCH] fix: Add QNAME in pair identification --- src/main/java/htsjdk/samtools/SAMRecord.java | 1 + src/test/java/htsjdk/samtools/SAMRecordUnitTest.java | 2 ++ 2 files changed, 3 insertions(+) diff --git a/src/main/java/htsjdk/samtools/SAMRecord.java b/src/main/java/htsjdk/samtools/SAMRecord.java index d08a16e5fe..d47ff9d82c 100644 --- a/src/main/java/htsjdk/samtools/SAMRecord.java +++ b/src/main/java/htsjdk/samtools/SAMRecord.java @@ -338,6 +338,7 @@ private boolean hasReferenceName() { */ public boolean isPair(final SAMRecord record) { return record != null + && Objects.equals(this.getReadName(), record.getReadName()) && this.getMateAlignmentStart() == record.getAlignmentStart() && record.getMateAlignmentStart() == this.getAlignmentStart() && !NO_ALIGNMENT_REFERENCE_NAME.equals(this.getMateReferenceName()) diff --git a/src/test/java/htsjdk/samtools/SAMRecordUnitTest.java b/src/test/java/htsjdk/samtools/SAMRecordUnitTest.java index f2618c2509..a91a403161 100644 --- a/src/test/java/htsjdk/samtools/SAMRecordUnitTest.java +++ b/src/test/java/htsjdk/samtools/SAMRecordUnitTest.java @@ -1124,9 +1124,11 @@ public void testRecordsArePairIfTheyLinkEachOtherInMateFields() { @Test public void testRecordsArePairIfTheyHaveNoMateFields() { final SAMRecord first = new SAMRecord(new SAMFileHeader(new SAMSequenceDictionary())); + first.setReadName("example1"); first.setAlignmentStart(42); first.setReferenceName("chrm1"); final SAMRecord second = new SAMRecord(new SAMFileHeader(new SAMSequenceDictionary())); + first.setReadName("example1"); second.setAlignmentStart(142); second.setReferenceName("chrm2");