Example #1
0
 public IndexCreator(BlockGZipStream readStream, Stream writeStream)
 {
     _reader         = new BgzipTextReader(readStream);
     _writeStream    = writeStream;
     _chromBenchmark = new Benchmark();
     _benchmark      = new Benchmark();
 }
Example #2
0
 public IndexCreator(BlockGZipStream readStream, Stream writeStream)
 {
     _reader              = new BgzipTextReader(readStream);
     _writeStream         = writeStream;
     _processedChromosome = new HashSet <string>();
     _chromBenchmark      = new Benchmark();
     _benchmark           = new Benchmark();
 }
        public void BgzipTextWriter_EndToEnd()
        {
            var asterisks         = new string('*', BlockGZipStream.BlockGZipFormatCommon.BlockSize);
            var observedLines     = new List <string>();
            var observedPositions = new List <long>();

            using (var ms = new MemoryStream())
            {
                using (var stream = new BlockGZipStream(ms, CompressionMode.Compress, true))
                    using (var writer = new BgzipTextWriter(stream))
                    {
                        writer.Flush();
                        writer.WriteLine("BOB");
                        writer.WriteLine();
                        writer.Flush();
                        writer.Write("AB");
                        writer.Write("");
                        writer.Write("C");
                        writer.Write(" ");
                        writer.WriteLine("123");
                        writer.WriteLine(asterisks);
                        writer.WriteLine(asterisks);
                        writer.WriteLine(asterisks);
                    }

                ms.Position = 0;

                using (var reader = new BgzipTextReader(new BlockGZipStream(ms, CompressionMode.Decompress)))
                {
                    while (true)
                    {
                        string line = reader.ReadLine();
                        observedPositions.Add(reader.Position);
                        if (line == null)
                        {
                            break;
                        }
                        observedLines.Add(line);
                    }
                }
            }

            Assert.Equal(6, observedLines.Count);
            Assert.Equal("BOB", observedLines[0]);
            Assert.Equal(0, observedLines[1].Length);
            Assert.Equal("ABC 123", observedLines[2]);
            Assert.Equal(asterisks, observedLines[3]);
            Assert.Equal(4, observedPositions[0]);
            Assert.Equal(5, observedPositions[1]);
            Assert.Equal(13, observedPositions[2]);
            Assert.Equal(43843598, observedPositions[3]);
            Assert.Equal(87097359, observedPositions[4]);
        }
Example #4
0
        public void JasixStreamReader()
        {
            var stream = ResourceUtilities.GetReadStream(Resources.TopPath("TinyAnnotated.json"));

            var lineCount = 0;

            using (var jasixReader = new BgzipTextReader(stream))
            {
                while (jasixReader.ReadLine() != null)
                {
                    lineCount++;
                }
            }

            Assert.Equal(4, lineCount);
        }