Exemplo n.º 1
0
        public TSqlFragment GetFragment(TextReader txtRdr, out IList <ParseError> errors, IEnumerable <IOverride> overrides = null)
        {
            TSqlFragment fragment;

            OverrideCompatabilityLevel compatibilityLevel = null;

            if (overrides != null)
            {
                foreach (var lintingOverride in overrides)
                {
                    if (lintingOverride is OverrideCompatabilityLevel overrideCompatability)
                    {
                        compatibilityLevel = overrideCompatability;
                    }
                }
            }

            if (compatibilityLevel != null)
            {
                var tempParser = GetSqlParser(compatibilityLevel.CompatabilityLevel);
                fragment = tempParser.Parse(txtRdr, out errors);
                return(fragment?.FirstTokenIndex != -1 ? fragment : null);
            }

            fragment = parser.Parse(txtRdr, out errors);
            return(fragment?.FirstTokenIndex != -1 ? fragment : null);
        }
Exemplo n.º 2
0
        public void TestInvalidCompatabilityLevels()
        {
            var testOverrideCompatabilityLevel = new OverrideCompatabilityLevel("foo");

            Assert.AreEqual(Constants.DefaultCompatabilityLevel, testOverrideCompatabilityLevel.CompatabilityLevel);
        }