public void TryConvert_DirectiveAttribute_Snippet_ReturnsTrue() { // Arrange var completionItem = new RazorCompletionItem("@testDisplay...", "testInsert", RazorCompletionItemKind.DirectiveAttribute); completionItem.SetAttributeCompletionDescription(new AttributeCompletionDescription(new CodeAnalysis.Razor.Completion.AttributeDescriptionInfo[] { new CodeAnalysis.Razor.Completion.AttributeDescriptionInfo("System.String", "System.String", "@testDisplay", "This is docs") })); var descriptionFactory = new Mock <TagHelperDescriptionFactory>(); var completionEndpoint = new RazorCompletionEndpoint(Dispatcher, EmptyDocumentResolver, CompletionFactsService, TagHelperCompletionService, descriptionFactory.Object, LoggerFactory); var capability = new CompletionCapability { CompletionItem = new CompletionItemCapability { SnippetSupport = true } }; completionEndpoint.SetCapability(capability); var expectedInsert = "testInsert$1=\"$2\"$0"; // Act var result = completionEndpoint.TryConvert(completionItem, out var converted); // Assert Assert.True(result); Assert.Equal(completionItem.DisplayText, converted.Label); Assert.Equal(expectedInsert, converted.InsertText); Assert.Equal(completionItem.InsertText, converted.FilterText); Assert.Equal(completionItem.InsertText, converted.SortText); Assert.Null(converted.Detail); Assert.Null(converted.Documentation); Assert.Null(converted.Command); Assert.True(converted.TryGetRazorCompletionKind(out var convertedKind)); Assert.Equal(RazorCompletionItemKind.DirectiveAttribute, convertedKind); }
public void TryConvert_Directive_ReturnsTrue() { // Arrange var completionItem = new RazorCompletionItem("testDisplay", "testInsert", RazorCompletionItemKind.Directive); var description = "Something"; completionItem.SetDirectiveCompletionDescription(new DirectiveCompletionDescription(description)); var descriptionFactory = new Mock <TagHelperDescriptionFactory>(); var completionEndpoint = new RazorCompletionEndpoint(Dispatcher, EmptyDocumentResolver, CompletionFactsService, TagHelperCompletionService, descriptionFactory.Object, LoggerFactory); completionEndpoint.SetCapability(DefaultCapability); // Act var result = completionEndpoint.TryConvert(completionItem, out var converted); // Assert Assert.True(result); Assert.Equal(completionItem.DisplayText, converted.Label); Assert.Equal(completionItem.InsertText, converted.InsertText); Assert.Equal(completionItem.DisplayText, converted.FilterText); Assert.Equal(completionItem.DisplayText, converted.SortText); Assert.Null(converted.Detail); Assert.Equal(description, converted.Documentation.String); Assert.True(converted.TryGetRazorCompletionKind(out var convertedKind)); Assert.Equal(RazorCompletionItemKind.Directive, convertedKind); }
public void TryConvert_Directive_SerializationDoesNotThrow() { // Arrange var completionItem = new RazorCompletionItem("testDisplay", "testInsert", RazorCompletionItemKind.Directive); var description = "Something"; completionItem.SetDirectiveCompletionDescription(new DirectiveCompletionDescription(description)); var descriptionFactory = new Mock <TagHelperDescriptionFactory>(); var completionEndpoint = new RazorCompletionEndpoint(Dispatcher, EmptyDocumentResolver, CompletionFactsService, TagHelperCompletionService, descriptionFactory.Object, LoggerFactory); completionEndpoint.SetCapability(DefaultCapability); completionEndpoint.TryConvert(completionItem, out var converted); // Act & Assert JsonConvert.SerializeObject(converted); }