コード例 #1
0
        public void PatternLengthEqualsZero()
        {
            String inputString   = "ase";
            Int32  patternLength = 0;

            PatternFinder.CountPatterns(inputString, patternLength);
        }
コード例 #2
0
        public void PatternLengthLessThanZero()
        {
            String inputString   = "ase";
            Int32  patternLength = -1;

            PatternFinder.CountPatterns(inputString, patternLength);
        }
コード例 #3
0
        public void InputStringLengthLessThanPatternLength()
        {
            String inputString   = "ase";
            Int32  patternLength = 4;

            PatternFinder.CountPatterns(inputString, patternLength);
        }
コード例 #4
0
        public void EmptyInputString()
        {
            String inputString   = String.Empty;
            Int32  patternLength = 2;

            PatternFinder.CountPatterns(inputString, patternLength);
        }
コード例 #5
0
        public void NoInputString()
        {
            String inputString   = null;
            Int32  patternLength = 3;

            PatternFinder.CountPatterns(inputString, patternLength);
        }
コード例 #6
0
        public void OneSymbolInputString()
        {
            String inputString   = "aaaa";
            Int32  patternLength = 2;

            Dictionary <String, Int32> patterns = PatternFinder.CountPatterns(inputString, patternLength);

            Assert.AreEqual(1, patterns.Count);
            Assert.AreEqual(3, patterns["aa"]);
        }
コード例 #7
0
        public void PatternAtTheEnd()
        {
            String inputString   = "ab3ab";
            Int32  patternLength = 2;

            Dictionary <String, Int32> patterns = PatternFinder.CountPatterns(inputString, patternLength);

            Assert.AreEqual(3, patterns.Count);
            Assert.AreEqual(2, patterns["ab"]);
        }
コード例 #8
0
        public void PatternLengthOneSymbol()
        {
            String inputString   = "abcabcabc";
            Int32  patternLength = 1;

            Dictionary <String, Int32> patterns = PatternFinder.CountPatterns(inputString, patternLength);

            Assert.AreEqual(3, patterns.Count);
            Assert.AreEqual(3, patterns["a"]);
            Assert.AreEqual(3, patterns["b"]);
            Assert.AreEqual(3, patterns["c"]);
        }
コード例 #9
0
        public void QuantityCheck()
        {
            String inputString   = "ab3ab*7";
            Int32  patternLength = 2;

            Dictionary <String, Int32> patterns = PatternFinder.CountPatterns(inputString, patternLength);

            Assert.AreEqual(5, patterns.Count);
            Assert.AreEqual(2, patterns["ab"]);
            Assert.AreEqual(1, patterns["b3"]);
            Assert.AreEqual(1, patterns["3a"]);
            Assert.AreEqual(1, patterns["b*"]);
            Assert.AreEqual(1, patterns["*7"]);
        }
コード例 #10
0
        public void PatternsIntersection()
        {
            String inputString   = "#xc513a7*c2!xa7*+3a7ckrc51g=hra7*";
            Int32  patternLength = 3;

            Dictionary <String, Int32> allPatterns = PatternFinder.CountPatterns(inputString, patternLength);

            Dictionary <String, Int32> patterns = allPatterns.Where(x => x.Value > 1).ToDictionary(x => x.Key, y => y.Value);

            Assert.AreEqual(3, patterns.Count);
            Assert.AreEqual(2, patterns["3a7"]);
            Assert.AreEqual(2, patterns["c51"]);
            Assert.AreEqual(3, patterns["a7*"]);
        }