public void HappyPath() { //var bamFilePath = Path.Combine(TestPaths.SharedBamDirectory, "Chr17Chr19.bam"); //Assert.True(File.Exists(bamFilePath)); // TODO figure out how to access the shared bams var tempPath = $"TemporaryBamFile_{Guid.NewGuid()}.bam"; if (File.Exists(tempPath)) { File.Delete(tempPath); } using (var bamWriter = new BamWriter(tempPath, "header", new List <GenomeMetadata.SequenceMetadata>())) { bamWriter.WriteAlignment(TestHelpers.CreateBamAlignment("ATCG", 1, 10, 30, true)); } var bamWriterFactory = new BamWriterFactory(1, tempPath); var tempPath2 = $"TemporaryBamFile_{Guid.NewGuid()}.bam"; if (File.Exists(tempPath2)) { File.Delete(tempPath2); } var bamWriterHandle = bamWriterFactory.CreateSingleBamWriter(tempPath2); bamWriterHandle.WriteAlignment(TestHelpers.CreateBamAlignment("ATCAG", 1, 10, 30, true)); bamWriterHandle.WriteAlignment(null); using (var reader = new BamReader(tempPath2)) { // TODO more specific? var header = reader.GetHeader(); Assert.Contains("ID:Gemini", header); Assert.Contains("PN:Gemini", header); } File.Delete(tempPath); File.Delete(tempPath2); }
private IBamWriterFactory GetBamWriterFactory(string inBam) { var bamWriterFactory = new BamWriterFactory(_numThreads, inBam); return(bamWriterFactory); }