diff --git a/src/Microsoft.SqlTools.ServiceLayer/LanguageServices/Contracts/Completion.cs b/src/Microsoft.SqlTools.ServiceLayer/LanguageServices/Contracts/Completion.cs
index b4d85eafb2..3f491141ed 100644
--- a/src/Microsoft.SqlTools.ServiceLayer/LanguageServices/Contracts/Completion.cs
+++ b/src/Microsoft.SqlTools.ServiceLayer/LanguageServices/Contracts/Completion.cs
@@ -55,10 +55,20 @@ public enum CompletionItemKind
public class Command
{
+ ///
+ /// Title of the command.
+ ///
+ public string Title { get; set; }
+
///
/// The identifier of the actual command handler, like `vsintellicode.completionItemSelected`.
///
- public string CommandStr { get; set; }
+ public string command { get; set; }
+
+ ///
+ /// A tooltip for the command, when represented in the UI.
+ ///
+ public string Tooltip { get; set; }
///
/// Arguments that the command handler should be invoked with.
diff --git a/test/Microsoft.SqlTools.ServiceLayer.IntegrationTests/LanguageServer/LanguageServiceTests.cs b/test/Microsoft.SqlTools.ServiceLayer.IntegrationTests/LanguageServer/LanguageServiceTests.cs
index aecd7010ff..1102336760 100644
--- a/test/Microsoft.SqlTools.ServiceLayer.IntegrationTests/LanguageServer/LanguageServiceTests.cs
+++ b/test/Microsoft.SqlTools.ServiceLayer.IntegrationTests/LanguageServer/LanguageServiceTests.cs
@@ -186,7 +186,7 @@ public async void AutoCompleteWithExtension()
//Validate the first completion item in the list is preselected
Assert.True(completions[0].Preselect.HasValue && completions[0].Preselect.Value, "Preselect is not set properly in the first completion item by the completion extension!");
//Validate the Command object attached to the completion item by the extension
- Assert.True(completions[0].Command != null && completions[0].Command.CommandStr == "vsintellicode.completionItemSelected", "Command is not set properly in the first completion item by the completion extension!");
+ Assert.True(completions[0].Command != null && completions[0].Command.command == "vsintellicode.completionItemSelected", "Command is not set properly in the first completion item by the completion extension!");
}
finally
{
diff --git a/test/Microsoft.SqlTools.Test.CompletionExtension/CompletionExt.cs b/test/Microsoft.SqlTools.Test.CompletionExtension/CompletionExt.cs
index 3d2774612b..9c1f52c92b 100644
--- a/test/Microsoft.SqlTools.Test.CompletionExtension/CompletionExt.cs
+++ b/test/Microsoft.SqlTools.Test.CompletionExtension/CompletionExt.cs
@@ -66,7 +66,7 @@ private async Task Run(CompletionItem[] completions, Cancellat
{
item.Command = new Command
{
- CommandStr = "vsintellicode.completionItemSelected",
+ command = "vsintellicode.completionItemSelected",
Arguments = new object[] { new Dictionary { { "IsCommit", "True" } } }
};
}