public void GetCdnaPositionOffset_Gap_Forward_ReturnNull() { var regions = new ITranscriptRegion[] { new TranscriptRegion(TranscriptRegionType.Gap, 1, 134901, 135802, 1760, 2661) }; var translation = new Mock <ITranslation>(); translation.SetupGet(x => x.CodingRegion).Returns(new CodingRegion(138530, 139309, 71, 850, 780)); var transcript = new Mock <ITranscript>(); transcript.SetupGet(x => x.Start).Returns(134901); transcript.SetupGet(x => x.End).Returns(139379); transcript.SetupGet(x => x.Gene.OnReverseStrand).Returns(false); transcript.SetupGet(x => x.TranscriptRegions).Returns(regions); transcript.SetupGet(x => x.Translation).Returns(translation.Object); var po = HgvsUtilities.GetCdnaPositionOffset(transcript.Object, 135001, 0, false); Assert.NotNull(po); Assert.True(po.HasStopCodonNotation); Assert.Equal(0, po.Offset); Assert.Equal(1760, po.Position); Assert.Equal("*910", po.Value); }
public void GetCdnaPositionOffset_Intron_LeqR_Reverse() { var regions = new ITranscriptRegion[] { new TranscriptRegion(TranscriptRegionType.Exon, 2, 134901, 135802, 1760, 2661), new TranscriptRegion(TranscriptRegionType.Intron, 1, 135803, 137619, 1759, 1760), new TranscriptRegion(TranscriptRegionType.Exon, 1, 137620, 139379, 1, 1759) }; var translation = new Mock <ITranslation>(); translation.SetupGet(x => x.CodingRegion).Returns(new CodingRegion(138530, 139309, 71, 850, 780)); var transcript = new Mock <ITranscript>(); transcript.SetupGet(x => x.Start).Returns(134901); transcript.SetupGet(x => x.End).Returns(139379); transcript.SetupGet(x => x.Gene.OnReverseStrand).Returns(true); transcript.SetupGet(x => x.TranscriptRegions).Returns(regions); transcript.SetupGet(x => x.Translation).Returns(translation.Object); var po = HgvsUtilities.GetCdnaPositionOffset(transcript.Object, 136711, 1, true); Assert.NotNull(po); Assert.True(po.HasStopCodonNotation); Assert.Equal(909, po.Offset); Assert.Equal(1759, po.Position); Assert.Equal("*909+909", po.Value); }
public void GetCdnaPositionOffset_Intron_ReqL_Reverse() { var regions = new ITranscriptRegion[] { new TranscriptRegion(TranscriptRegionType.Intron, 10, 108901173, 108918171, 422, 423) }; var translation = new Mock <ITranslation>(); translation.SetupGet(x => x.CodingRegion).Returns(new CodingRegion(108813927, 108941437, 129, 1613, 1485)); var transcript = new Mock <ITranscript>(); transcript.SetupGet(x => x.Start).Returns(108810721); transcript.SetupGet(x => x.End).Returns(108918171); transcript.SetupGet(x => x.Gene.OnReverseStrand).Returns(true); transcript.SetupGet(x => x.TranscriptRegions).Returns(regions); transcript.SetupGet(x => x.Translation).Returns(translation.Object); var po = HgvsUtilities.GetCdnaPositionOffset(transcript.Object, 108909672, 0, true); Assert.NotNull(po); Assert.False(po.HasStopCodonNotation); Assert.Equal(8500, po.Offset); Assert.Equal(422, po.Position); Assert.Equal("294+8500", po.Value); }
public void GetCdnaPositionOffset_Exon_Reverse() { var transcript = HgvsCodingNomenclatureTests.GetReverseTranscript(); var po = HgvsUtilities.GetCdnaPositionOffset(transcript, 137721, 2, true); Assert.NotNull(po); Assert.True(po.HasStopCodonNotation); Assert.Equal(0, po.Offset); Assert.Equal(1659, po.Position); Assert.Equal("*809", po.Value); }
public void GetCdnaPositionOffset_Exon_Forward() { var transcript = HgvsCodingNomenclatureTests.GetForwardTranscript(); var po = HgvsUtilities.GetCdnaPositionOffset(transcript, 1262627, 4, true); Assert.NotNull(po); Assert.False(po.HasStopCodonNotation); Assert.Equal(0, po.Offset); Assert.Equal(540, po.Position); Assert.Equal("129", po.Value); }
public void GetCdnaPositionOffset_Intron_LeqR_Forward() { var transcript = HgvsCodingNomenclatureTests.GetForwardTranscript(); var po = HgvsUtilities.GetCdnaPositionOffset(transcript, 1261349, 1, true); Assert.NotNull(po); Assert.False(po.HasStopCodonNotation); Assert.Equal(867, po.Offset); Assert.Equal(336, po.Position); Assert.Equal("-76+867", po.Value); }
public void GetCdnaPositionOffset_Gap_RightSide_Reverse() { var transcript = GetReverseGapTranscript(); var po = HgvsUtilities.GetCdnaPositionOffset(transcript, 1103, 1, false); Assert.NotNull(po); Assert.False(po.HasStopCodonNotation); Assert.Equal(0, po.Offset); Assert.Equal(200, po.Position); Assert.Equal("150", po.Value); }
public void GetCdnaPositionOffset_Gap_RightSide_Forward() { var transcript = GetForwardGapTranscript(); var po = HgvsUtilities.GetCdnaPositionOffset(transcript, 1102, 1, true); Assert.NotNull(po); Assert.False(po.HasStopCodonNotation); Assert.Equal(0, po.Offset); Assert.Equal(101, po.Position); Assert.Equal("51", po.Value); }
public void GetCdnaPositionOffset_Intron_LltR_Reverse() { var transcript = HgvsCodingNomenclatureTests.GetReverseTranscript(); var po = HgvsUtilities.GetCdnaPositionOffset(transcript, 136000, 1, true); Assert.NotNull(po); Assert.True(po.HasStopCodonNotation); Assert.Equal(-198, po.Offset); Assert.Equal(1760, po.Position); Assert.Equal("*910-198", po.Value); }
public void GetCdnaPositionOffset_Intron_RltL_Reverse() { var transcript = HgvsCodingNomenclatureTests.GetReverseTranscript(); var po = HgvsUtilities.GetCdnaPositionOffset(transcript, 137619, 1, true); Assert.NotNull(po); Assert.True(po.HasStopCodonNotation); Assert.Equal(2, po.Offset); Assert.Equal(1759, po.Position); Assert.Equal("*909+2", po.Value); }
public void GetCdnaPositionOffset_Intron_RltL_Forward() { var transcript = HgvsCodingNomenclatureTests.GetForwardTranscript(); var po = HgvsUtilities.GetCdnaPositionOffset(transcript, 1262210, 1); Assert.NotNull(po); Assert.False(po.HasStopCodonNotation); Assert.Equal(-6, po.Offset); Assert.Equal(337, po.Position); Assert.Equal("-75-6", po.Value); }
private static (string Hgvs, bool IsTranscriptSuffix) GetBreakEndHgvs(ITranscript transcript, int regionIndex, int position, bool isGenomicSuffix) { var positionOffset = HgvsUtilities.GetCdnaPositionOffset(transcript, position, regionIndex); var isTranscriptSuffix = isGenomicSuffix != transcript.Gene.OnReverseStrand; var codingRegionLength = transcript.Translation.CodingRegion.CdnaEnd - transcript.Translation.CodingRegion.CdnaStart + 1; var hgvsPosString = isTranscriptSuffix ? positionOffset.Value + "_" + codingRegionLength : 1 + "_" + positionOffset.Value; var hgvs = transcript.Gene.Symbol + "{" + transcript.Id.WithVersion + "}" + ":c." + hgvsPosString; return(hgvs, isTranscriptSuffix); }
private static (string Begin, string End) AdjustSecond(BreakPointTranscript second) { var codingRegion = second.Transcript.Translation.CodingRegion; int position = second.GenomicPosition; int codingRegionLength = codingRegion.CdnaEnd - codingRegion.CdnaStart + 1; if (position < codingRegion.Start) { return((position - codingRegion.Start).ToString(), "?"); } if (position > codingRegion.End) { return((position - codingRegion.End + codingRegionLength).ToString(), "?"); } return(HgvsUtilities.GetCdnaPositionOffset(second.Transcript, position, second.RegionIndex).Value, codingRegionLength.ToString()); }
private static (string Begin, string End) AdjustFirst(BreakPointTranscript first) { var codingRegion = first.Transcript.Translation.CodingRegion; int position = first.GenomicPosition; int codingRegionLength = codingRegion.CdnaEnd - codingRegion.CdnaStart + 1; if (position < codingRegion.Start) { return("?", (position - codingRegion.Start).ToString()); } if (position > codingRegion.End) { return("?", (position - codingRegion.End + codingRegionLength).ToString()); } return("1", HgvsUtilities.GetCdnaPositionOffset(first.Transcript, position, first.RegionIndex).Value); }