コード例 #1
0
        public void ShouldIgnore(string description, string testString)
        {
            var stream = ParsingUtility.GenerateStreamFromString(testString);

            void DynamicCallback(string dynamicSQL, int dynamicStartLine, int dynamicStartColumn)
            {
                Assert.Fail("should not perform callback");
            }

            var visitor         = new DynamicSQLParser(DynamicCallback);
            var fragmentBuilder = new FragmentBuilder();
            var textReader      = new StreamReader(stream);
            var sqlFragment     = fragmentBuilder.GetFragment(textReader, out var errors);

            sqlFragment.Accept(visitor);

            CollectionAssert.IsEmpty(errors, "parsing errors were generated");
        }
コード例 #2
0
        public void ShouldParse(string description, string executeStatement, string innerSql, bool expectCallback = true)
        {
            var stream = ParsingUtility.GenerateStreamFromString(executeStatement);

            var receivedCallback = false;

            void DynamicCallback(string dynamicSQL, int dynamicStartLine, int dynamicStartColumn)
            {
                Assert.AreEqual(innerSql, dynamicSQL);
                receivedCallback = true;
            }

            var visitor         = new DynamicSQLParser(DynamicCallback);
            var fragmentBuilder = new FragmentBuilder();
            var textReader      = new StreamReader(stream);

            var sqlFragment = fragmentBuilder.GetFragment(textReader, out var errors);

            CollectionAssert.IsEmpty(errors, "parsing errors were generated");

            sqlFragment.Accept(visitor);

            Assert.AreEqual(receivedCallback, expectCallback);
        }