From 017b00437a2289e7c2b09a522244de491a1b9af8 Mon Sep 17 00:00:00 2001 From: Leila Lali Date: Tue, 25 Oct 2016 17:09:42 -0700 Subject: [PATCH] changing the setting namespace (#116) --- .../LanguageServices/LanguageService.cs | 8 +++--- .../SqlContext/IntelliSenseSettings.cs | 13 +++++++-- .../SqlContext/SqlToolsSettings.cs | 21 ++++++-------- .../SqlContext/SettingsTests.cs | 28 +++++++++---------- 4 files changed, 37 insertions(+), 33 deletions(-) diff --git a/src/Microsoft.SqlTools.ServiceLayer/LanguageServices/LanguageService.cs b/src/Microsoft.SqlTools.ServiceLayer/LanguageServices/LanguageService.cs index dba3d0aa..10ac39cc 100644 --- a/src/Microsoft.SqlTools.ServiceLayer/LanguageServices/LanguageService.cs +++ b/src/Microsoft.SqlTools.ServiceLayer/LanguageServices/LanguageService.cs @@ -392,15 +392,15 @@ namespace Microsoft.SqlTools.ServiceLayer.LanguageServices SqlToolsSettings oldSettings, EventContext eventContext) { - bool oldEnableIntelliSense = oldSettings.SqlTools.EnableIntellisense; - bool? oldEnableDiagnostics = oldSettings.SqlTools.IntelliSense.EnableDiagnostics; + bool oldEnableIntelliSense = oldSettings.SqlTools.IntelliSense.EnableIntellisense; + bool? oldEnableDiagnostics = oldSettings.SqlTools.IntelliSense.EnableErrorChecking; // update the current settings to reflect any changes CurrentSettings.Update(newSettings); // if script analysis settings have changed we need to clear the current diagnostic markers - if (oldEnableIntelliSense != newSettings.SqlTools.EnableIntellisense - || oldEnableDiagnostics != newSettings.SqlTools.IntelliSense.EnableDiagnostics) + if (oldEnableIntelliSense != newSettings.SqlTools.IntelliSense.EnableIntellisense + || oldEnableDiagnostics != newSettings.SqlTools.IntelliSense.EnableErrorChecking) { // if the user just turned off diagnostics then send an event to clear the error markers if (!newSettings.IsDiagnositicsEnabled) diff --git a/src/Microsoft.SqlTools.ServiceLayer/SqlContext/IntelliSenseSettings.cs b/src/Microsoft.SqlTools.ServiceLayer/SqlContext/IntelliSenseSettings.cs index f46d3556..9d6caab3 100644 --- a/src/Microsoft.SqlTools.ServiceLayer/SqlContext/IntelliSenseSettings.cs +++ b/src/Microsoft.SqlTools.ServiceLayer/SqlContext/IntelliSenseSettings.cs @@ -15,12 +15,19 @@ namespace Microsoft.SqlTools.ServiceLayer.SqlContext /// public IntelliSenseSettings() { + this.EnableIntellisense = true; this.EnableSuggestions = true; this.LowerCaseSuggestions = false; - this.EnableDiagnostics = true; + this.EnableErrorChecking = true; this.EnableQuickInfo = true; } + /// + /// Gets or sets a flag determining if IntelliSense is enabled + /// + /// + public bool EnableIntellisense { get; set; } + /// /// Gets or sets a flag determining if suggestions are enabled /// @@ -35,7 +42,7 @@ namespace Microsoft.SqlTools.ServiceLayer.SqlContext /// /// Gets or sets a flag determining if diagnostics are enabled /// - public bool? EnableDiagnostics { get; set; } + public bool? EnableErrorChecking { get; set; } /// /// Gets or sets a flag determining if quick info is enabled @@ -52,7 +59,7 @@ namespace Microsoft.SqlTools.ServiceLayer.SqlContext { this.EnableSuggestions = settings.EnableSuggestions; this.LowerCaseSuggestions = settings.LowerCaseSuggestions; - this.EnableDiagnostics = settings.EnableDiagnostics; + this.EnableErrorChecking = settings.EnableErrorChecking; this.EnableQuickInfo = settings.EnableQuickInfo; } } diff --git a/src/Microsoft.SqlTools.ServiceLayer/SqlContext/SqlToolsSettings.cs b/src/Microsoft.SqlTools.ServiceLayer/SqlContext/SqlToolsSettings.cs index cfa438c0..37c35ebf 100644 --- a/src/Microsoft.SqlTools.ServiceLayer/SqlContext/SqlToolsSettings.cs +++ b/src/Microsoft.SqlTools.ServiceLayer/SqlContext/SqlToolsSettings.cs @@ -3,6 +3,8 @@ // Licensed under the MIT license. See LICENSE file in the project root for full license information. // +using Newtonsoft.Json; + namespace Microsoft.SqlTools.ServiceLayer.SqlContext { /// @@ -15,6 +17,7 @@ namespace Microsoft.SqlTools.ServiceLayer.SqlContext /// /// Gets or sets the underlying settings value object /// + [JsonProperty("mssql")] public SqlToolsSettingsValues SqlTools { get @@ -47,7 +50,7 @@ namespace Microsoft.SqlTools.ServiceLayer.SqlContext { if (settings != null) { - this.SqlTools.EnableIntellisense = settings.SqlTools.EnableIntellisense; + this.SqlTools.IntelliSense.EnableIntellisense = settings.SqlTools.IntelliSense.EnableIntellisense; this.SqlTools.IntelliSense.Update(settings.SqlTools.IntelliSense); } } @@ -59,8 +62,8 @@ namespace Microsoft.SqlTools.ServiceLayer.SqlContext { get { - return this.SqlTools.EnableIntellisense - && this.SqlTools.IntelliSense.EnableDiagnostics.Value; + return this.SqlTools.IntelliSense.EnableIntellisense + && this.SqlTools.IntelliSense.EnableErrorChecking.Value; } } @@ -71,7 +74,7 @@ namespace Microsoft.SqlTools.ServiceLayer.SqlContext { get { - return this.SqlTools.EnableIntellisense + return this.SqlTools.IntelliSense.EnableIntellisense && this.SqlTools.IntelliSense.EnableSuggestions.Value; } } @@ -83,7 +86,7 @@ namespace Microsoft.SqlTools.ServiceLayer.SqlContext { get { - return this.SqlTools.EnableIntellisense + return this.SqlTools.IntelliSense.EnableIntellisense && this.SqlTools.IntelliSense.EnableQuickInfo.Value; } } @@ -99,17 +102,11 @@ namespace Microsoft.SqlTools.ServiceLayer.SqlContext /// public SqlToolsSettingsValues() { - this.EnableIntellisense = true; + this.IntelliSense = new IntelliSenseSettings(); this.QueryExecutionSettings = new QueryExecutionSettings(); } - /// - /// Gets or sets a flag determining if IntelliSense is enabled - /// - /// - public bool EnableIntellisense { get; set; } - /// /// Gets or sets the detailed IntelliSense settings /// diff --git a/test/Microsoft.SqlTools.ServiceLayer.Test/SqlContext/SettingsTests.cs b/test/Microsoft.SqlTools.ServiceLayer.Test/SqlContext/SettingsTests.cs index fba65a29..e06764de 100644 --- a/test/Microsoft.SqlTools.ServiceLayer.Test/SqlContext/SettingsTests.cs +++ b/test/Microsoft.SqlTools.ServiceLayer.Test/SqlContext/SettingsTests.cs @@ -22,8 +22,8 @@ namespace Microsoft.SqlTools.ServiceLayer.Test.LanguageServices var sqlToolsSettings = new SqlToolsSettings(); Assert.True(sqlToolsSettings.IsDiagnositicsEnabled); Assert.True(sqlToolsSettings.IsSuggestionsEnabled); - Assert.True(sqlToolsSettings.SqlTools.EnableIntellisense); - Assert.True(sqlToolsSettings.SqlTools.IntelliSense.EnableDiagnostics); + Assert.True(sqlToolsSettings.SqlTools.IntelliSense.EnableIntellisense); + Assert.True(sqlToolsSettings.SqlTools.IntelliSense.EnableErrorChecking); Assert.True(sqlToolsSettings.SqlTools.IntelliSense.EnableSuggestions); Assert.True(sqlToolsSettings.SqlTools.IntelliSense.EnableQuickInfo); Assert.False(sqlToolsSettings.SqlTools.IntelliSense.LowerCaseSuggestions); @@ -38,17 +38,17 @@ namespace Microsoft.SqlTools.ServiceLayer.Test.LanguageServices var sqlToolsSettings = new SqlToolsSettings(); // diagnostics is enabled if IntelliSense and Diagnostics flags are set - sqlToolsSettings.SqlTools.EnableIntellisense = true; - sqlToolsSettings.SqlTools.IntelliSense.EnableDiagnostics = true; + sqlToolsSettings.SqlTools.IntelliSense.EnableIntellisense = true; + sqlToolsSettings.SqlTools.IntelliSense.EnableErrorChecking = true; Assert.True(sqlToolsSettings.IsDiagnositicsEnabled); // diagnostics is disabled if either IntelliSense and Diagnostics flags is not set - sqlToolsSettings.SqlTools.EnableIntellisense = false; - sqlToolsSettings.SqlTools.IntelliSense.EnableDiagnostics = true; + sqlToolsSettings.SqlTools.IntelliSense.EnableIntellisense = false; + sqlToolsSettings.SqlTools.IntelliSense.EnableErrorChecking = true; Assert.False(sqlToolsSettings.IsDiagnositicsEnabled); - sqlToolsSettings.SqlTools.EnableIntellisense = true; - sqlToolsSettings.SqlTools.IntelliSense.EnableDiagnostics = false; + sqlToolsSettings.SqlTools.IntelliSense.EnableIntellisense = true; + sqlToolsSettings.SqlTools.IntelliSense.EnableErrorChecking = false; Assert.False(sqlToolsSettings.IsDiagnositicsEnabled); } @@ -61,16 +61,16 @@ namespace Microsoft.SqlTools.ServiceLayer.Test.LanguageServices var sqlToolsSettings = new SqlToolsSettings(); // suggestions is enabled if IntelliSense and Suggestions flags are set - sqlToolsSettings.SqlTools.EnableIntellisense = true; + sqlToolsSettings.SqlTools.IntelliSense.EnableIntellisense = true; sqlToolsSettings.SqlTools.IntelliSense.EnableSuggestions = true; Assert.True(sqlToolsSettings.IsSuggestionsEnabled); // suggestions is disabled if either IntelliSense and Suggestions flags is not set - sqlToolsSettings.SqlTools.EnableIntellisense = false; + sqlToolsSettings.SqlTools.IntelliSense.EnableIntellisense = false; sqlToolsSettings.SqlTools.IntelliSense.EnableSuggestions = true; Assert.False(sqlToolsSettings.IsSuggestionsEnabled); - sqlToolsSettings.SqlTools.EnableIntellisense = true; + sqlToolsSettings.SqlTools.IntelliSense.EnableIntellisense = true; sqlToolsSettings.SqlTools.IntelliSense.EnableSuggestions = false; Assert.False(sqlToolsSettings.IsSuggestionsEnabled); } @@ -84,16 +84,16 @@ namespace Microsoft.SqlTools.ServiceLayer.Test.LanguageServices var sqlToolsSettings = new SqlToolsSettings(); // quick info is enabled if IntelliSense and quick info flags are set - sqlToolsSettings.SqlTools.EnableIntellisense = true; + sqlToolsSettings.SqlTools.IntelliSense.EnableIntellisense = true; sqlToolsSettings.SqlTools.IntelliSense.EnableQuickInfo = true; Assert.True(sqlToolsSettings.IsQuickInfoEnabled); // quick info is disabled if either IntelliSense and quick info flags is not set - sqlToolsSettings.SqlTools.EnableIntellisense = false; + sqlToolsSettings.SqlTools.IntelliSense.EnableIntellisense = false; sqlToolsSettings.SqlTools.IntelliSense.EnableQuickInfo = true; Assert.False(sqlToolsSettings.IsQuickInfoEnabled); - sqlToolsSettings.SqlTools.EnableIntellisense = true; + sqlToolsSettings.SqlTools.IntelliSense.EnableIntellisense = true; sqlToolsSettings.SqlTools.IntelliSense.EnableQuickInfo = false; Assert.False(sqlToolsSettings.IsQuickInfoEnabled); }