public void CalculateBndBorderDistanceWorks([NotNull] string chr, uint position, [NotNull] string otherChr, uint otherPos, int ciStart, int ciEnd, double percentDistance, uint basepairDistance, uint borderStart, uint borderEnd) { var thisPos = ContigAndPosition.Create(ContigInfo.Create(chr), position); var otherPosition = ContigAndPosition.Create(ContigInfo.Create(otherChr), otherPos); var ci = new InclusiveInterval <int>(ciStart, ciEnd); var actualCi = thisPos.CalculateBndBorderInterval(otherPosition, ci, percentDistance, basepairDistance); var expectedCi = ContigAndInterval.Create(ContigInfo.Create(chr), borderStart, borderEnd); Assert.Equal(expectedCi, actualCi); }
public static void WittyerBndCreateCorrectly() { var vcfSettings = VcfVariantParserSettings.Create(ImmutableList.Create("proband", "father"), GenomeAssembly.Grch37); var bnd1 = VcfVariant.TryParse(GenotypedBnd, vcfSettings).GetOrThrowDebug(); var bnd2 = VcfVariant.TryParse(GenotypedBndPair, vcfSettings).GetOrThrowDebug(); var wittyerBnd = WittyerBndInternal .Create(bnd2, bnd2.Samples["father"], WittyerType.TranslocationBreakend, Bins, BasepairDistance, PercentDistance, bnd1); var expectedContig = ContigInfo.Create("1"); var expectedEndInterval = ContigAndInterval.Create(ContigInfo.Create("4"), 191034451, 191035452); MultiAssert.Equal(expectedContig, wittyerBnd.Contig); MultiAssert.Equal(expectedEndInterval, wittyerBnd.EndInterval); MultiAssert.Equal(230675U, wittyerBnd.Start); MultiAssert.Equal(231676U, wittyerBnd.Stop); MultiAssert.Equal(WittyerConstants.StartingBin, wittyerBnd.Win.Start); MultiAssert.Equal(null, wittyerBnd.Win.End); MultiAssert.AssertAll(); }