// Disable flaky test (mairvine - 3/15/2018)
        // [Fact]
        public void CompletionItemsShouldCreatedUsingSqlParserIfTheProcessDoesNotTimeout()
        {
            ConnectedBindingQueue bindingQueue      = new ConnectedBindingQueue();
            ScriptDocumentInfo    docInfo           = CreateScriptDocumentInfo();
            CompletionService     completionService = new CompletionService(bindingQueue);
            ConnectionInfo        connectionInfo    = new ConnectionInfo(null, null, null);
            bool useLowerCaseSuggestions            = true;

            CompletionItem[] defaultCompletionList = AutoCompleteHelper.GetDefaultCompletionItems(docInfo, useLowerCaseSuggestions);

            List <Declaration> declarations = new List <Declaration>();

            var sqlParserWrapper = new Mock <ISqlParserWrapper>();

            sqlParserWrapper.Setup(x => x.FindCompletions(docInfo.ScriptParseInfo.ParseResult, docInfo.ParserLine, docInfo.ParserColumn,
                                                          It.IsAny <IMetadataDisplayInfoProvider>())).Returns(declarations);
            completionService.SqlParserWrapper = sqlParserWrapper.Object;

            AutoCompletionResult result = completionService.CreateCompletions(connectionInfo, docInfo, useLowerCaseSuggestions);

            Assert.NotNull(result);
            Assert.NotEqual(result.CompletionItems == null ? 0 : result.CompletionItems.Count(), defaultCompletionList.Count());
        }
        public void CompletionItemsShouldCreatedUsingDefaultListIfTheSqlParserProcessTimesout()
        {
            ConnectedBindingQueue bindingQueue      = new ConnectedBindingQueue();
            ScriptDocumentInfo    docInfo           = CreateScriptDocumentInfo();
            CompletionService     completionService = new CompletionService(bindingQueue);
            ConnectionInfo        connectionInfo    = new ConnectionInfo(null, null, null);
            bool useLowerCaseSuggestions            = true;
            List <Declaration> declarations         = new List <Declaration>();

            CompletionItem[] defaultCompletionList = AutoCompleteHelper.GetDefaultCompletionItems(docInfo, useLowerCaseSuggestions);

            var sqlParserWrapper = new Mock <ISqlParserWrapper>();

            sqlParserWrapper.Setup(x => x.FindCompletions(docInfo.ScriptParseInfo.ParseResult, docInfo.ParserLine, docInfo.ParserColumn,
                                                          It.IsAny <IMetadataDisplayInfoProvider>())).Callback(() => Thread.Sleep(LanguageService.BindingTimeout + 100)).Returns(declarations);
            completionService.SqlParserWrapper = sqlParserWrapper.Object;

            AutoCompletionResult result = completionService.CreateCompletions(connectionInfo, docInfo, useLowerCaseSuggestions);

            Assert.NotNull(result);
            Assert.Equal(result.CompletionItems.Count(), defaultCompletionList.Count());
            Thread.Sleep(3000);
            Assert.True(connectionInfo.IntellisenseMetrics.Quantile.Any());
        }