diff --git a/src/Microsoft.SqlTools.ServiceLayer/Scripting/ScriptAsOptions.cs b/src/Microsoft.SqlTools.ServiceLayer/Scripting/ScriptAsOptions.cs index f1f69088..d87b7e55 100644 --- a/src/Microsoft.SqlTools.ServiceLayer/Scripting/ScriptAsOptions.cs +++ b/src/Microsoft.SqlTools.ServiceLayer/Scripting/ScriptAsOptions.cs @@ -691,7 +691,7 @@ namespace Microsoft.SqlTools.ServiceLayer.Scripting /// /// Returns the value of ScriptIndexes Property /// - public bool? DriIndexes { get { return ScriptOptions.ScriptIndexes; } } + public bool? Indexes { get { return ScriptOptions.ScriptIndexes; } } /// diff --git a/src/Microsoft.SqlTools.ServiceLayer/Scripting/ScriptAsScriptingOperation.cs b/src/Microsoft.SqlTools.ServiceLayer/Scripting/ScriptAsScriptingOperation.cs index 3bbda445..a3b7ff16 100644 --- a/src/Microsoft.SqlTools.ServiceLayer/Scripting/ScriptAsScriptingOperation.cs +++ b/src/Microsoft.SqlTools.ServiceLayer/Scripting/ScriptAsScriptingOperation.cs @@ -75,7 +75,8 @@ namespace Microsoft.SqlTools.ServiceLayer.Scripting UrnCollection urns = CreateUrns(ServerConnection); ScriptingOptions options = new ScriptingOptions(); SetScriptBehavior(options); - PopulateAdvancedScriptOptions(this.Parameters.ScriptOptions, options); + ScriptAsOptions scriptAsOptions = new ScriptAsOptions(this.Parameters.ScriptOptions); + PopulateAdvancedScriptOptions(scriptAsOptions, options); options.WithDependencies = false; // TODO: Not including the header by default. We have to get this option from client options.IncludeHeaders = false; diff --git a/test/Microsoft.SqlTools.ServiceLayer.IntegrationTests/Scripting/ScriptingServiceTests.cs b/test/Microsoft.SqlTools.ServiceLayer.IntegrationTests/Scripting/ScriptingServiceTests.cs index d42f7606..18e88df6 100644 --- a/test/Microsoft.SqlTools.ServiceLayer.IntegrationTests/Scripting/ScriptingServiceTests.cs +++ b/test/Microsoft.SqlTools.ServiceLayer.IntegrationTests/Scripting/ScriptingServiceTests.cs @@ -89,7 +89,14 @@ namespace Microsoft.SqlTools.ServiceLayer.IntegrationTests.Scripting [Fact] public async void VerifyScriptAsCreateTable() { - string query = "CREATE TABLE testTable1 (c1 int)"; + string query = @"CREATE TABLE testTable1 (c1 int) + GO + CREATE CLUSTERED INDEX [ClusteredIndex-1] ON [dbo].[testTable1] + ( + [c1] ASC + ) + GO + "; ScriptingOperationType scriptCreateDrop = ScriptingOperationType.Create; ScriptingObject scriptingObject = new ScriptingObject { @@ -97,9 +104,10 @@ namespace Microsoft.SqlTools.ServiceLayer.IntegrationTests.Scripting Schema = "dbo", Type = "Table" }; - string expectedScript = "CREATE TABLE [dbo].[testTable1]"; + List expectedScripts = new List { "CREATE TABLE [dbo].[testTable1]", "CREATE CLUSTERED INDEX [ClusteredIndex-1] ON [dbo].[testTable1]" }; - await VerifyScriptAs(query, scriptingObject, scriptCreateDrop, expectedScript); + + await VerifyScriptAsForMultipleObjects(query, new List { scriptingObject }, scriptCreateDrop, expectedScripts); } [Fact]