private static void AssertIsNotMatch(string query)
        {
            var completionModel = GetCompletionModel(query);
            var items           = completionModel.Items.ToDictionary(i => i.InsertionText);
            var typeNames       = SyntaxFacts.GetTypeNames();

            var returnsAnyTypes = typeNames.Any(items.ContainsKey);

            Assert.False(returnsAnyTypes);
        }
        protected override IEnumerable <CompletionItem> GetItems(SemanticModel semanticModel, int position, CastExpressionSyntax node)
        {
            if (node.AsKeyword.IsMissing || position < node.AsKeyword.Span.End)
            {
                return(Enumerable.Empty <CompletionItem>());
            }

            return(from typeName in SyntaxFacts.GetTypeNames()
                   select GetCompletionItem(typeName));
        }
        private static void AssertIsMatch(string query)
        {
            var completionModel = GetCompletionModel(query);
            var items           = completionModel.Items.ToDictionary(i => i.InsertionText);
            var typeNames       = SyntaxFacts.GetTypeNames();

            foreach (var typeName in typeNames)
            {
                var item = items[typeName];
                Assert.Equal(Glyph.Type, item.Glyph);
                Assert.Equal(typeName, item.Description);
                Assert.Equal(typeName, item.DisplayText);
                Assert.Equal(typeName, item.InsertionText);
                Assert.Equal(null, item.Symbol);
            }
        }