Exemple #1
0
        public void TestStreamSegmentAnalyser()
        {
            using (var fs = GetStream())
                using (var parser = new StreamSegmentParser(fs).SetDelimiter(',').SetCacheSize(64))
                    using (var analyser = new StreamSegmentAnalyser(parser))
                    {
                        var segments = parser.ReadSegments().ToList();
                        var seqEqual = segments.SequenceEqual("abcdef".ToCharArray().Select(x => x.ToString()));
                        Assert.IsTrue(seqEqual);
                    }

            Stream GetStream()
            {
                var raw     = "a,b,c,d,e,f";
                var encoded = Encoding.UTF8.GetBytes(raw);

                return(new MemoryStream(encoded));
            }
        }
Exemple #2
0
 /// <summary>
 /// Returns an ordered collection of stringsegment and occurance count.
 /// </summary>
 /// <param name="parser"></param>
 /// <param name="token">When set, the operation can be canceled</param>
 /// <returns></returns>
 public IEnumerable <SegmentAnalyzerResult> Analyze(StreamSegmentParser parser, CancellationToken token = default)
 {
     return(Analyze(parser.ReadSegments(token), token));
 }