mirror of
https://github.com/ckaczor/sqltoolsservice.git
synced 2026-01-21 01:25:42 -05:00
3278 Kusto Unit Test Refactor (#1053)
* 3278 Moved functions related to Metadata from DataSourceFactory to MetadataFactory.cs * 3278 Refactored DataSourceFactory to not be static. Added IDataSourceFactory interface. * 3278 Refactored IKustoIntellisenseHelper.cs to not be static. Added IKustoIntellisenseHelper.cs interface. * 3278 Removed unused functions from Scripter and deleted ScripterCore.cs because it was unused. Refactored Scripter.cs methods to not be static and created IScripter.cs * 3278 Refactored datsasourceConnectionFactory in ConnectionService to use MEF through the InitializeService function * 3278 Refactored IAutoCompleteHelper to not be static and added IAutoCompleteHelper interface. * 3278 Removed unused classes DatabaseFullAccessException and FeatureWithFullDbAccess. Refactored ObjectExplorerService to use ImportingConstructor attribute. Removed commented out in KustoResultsReader. Removed unused functions from DatabaseLocksManager. Removed unused IDataSourceConnectionFactory from ConnectionService * 3278 Moved SqlConnectionOpener class to new file. Added new interfaces IConnectedBindingQueue.cs and ISqlConnectionOpener.cs Added sqlConnectionOpener to dependency in ConnectedBindingQueue. * 3278 Removed needsMetadata param from ConnectedBindingQueue. Added param to AddConnectionContext where it's used * 3278 Refactored ConnectedBindingQueue to use MEF. Refactored usages to run against interface. * 3278 Corrected ServiceHost namespace. Removed unused dependency to sqlToolsContext in LanguageService. Updated dependency in MetadataService and LanguageService to IProtocolEndpoint instead of ServiceHost * 3278 Added back NextResult function and summary to KustoResultsReader. Renamed instance to _instance in ConnectionService and DatabaseLocksManager to stay consistent. Changed OpenDataSourceConnection to private in ConnectionService * 3278 Converted helper methods back to static and removed backing interfaces * 3278 Reverted AdminService > InitializeService to use ServiceHost as param
This commit is contained in:
@@ -88,9 +88,12 @@ namespace Microsoft.Kusto.ServiceLayer.DataSource
|
||||
ClusterName = GetClusterName(connectionString);
|
||||
DatabaseName = GetDatabaseName(connectionString);
|
||||
UserToken = azureAccountToken;
|
||||
SchemaState = Task.Run(() => KustoIntellisenseHelper.AddOrUpdateDatabaseAsync(this, GlobalState.Default, DatabaseName, ClusterName, throwOnError: false)).Result;
|
||||
SchemaState = Task.Run(() =>
|
||||
KustoIntellisenseHelper.AddOrUpdateDatabaseAsync(this, GlobalState.Default, DatabaseName, ClusterName,
|
||||
throwOnError: false)).Result;
|
||||
// Check if a connection can be made
|
||||
ValidationUtils.IsTrue<ArgumentException>(Exists().Result, $"Unable to connect. ClusterName = {ClusterName}, DatabaseName = {DatabaseName}");
|
||||
ValidationUtils.IsTrue<ArgumentException>(Exists().Result,
|
||||
$"Unable to connect. ClusterName = {ClusterName}, DatabaseName = {DatabaseName}");
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -736,7 +739,7 @@ namespace Microsoft.Kusto.ServiceLayer.DataSource
|
||||
if (tableInfos.Any(x => !string.IsNullOrWhiteSpace(x.Folder)))
|
||||
{
|
||||
// create Table folder to hold functions tables
|
||||
var tableFolder = DataSourceFactory.CreateFolderMetadata(databaseMetadata, rootTableFolderKey.ToString(), "Tables");
|
||||
var tableFolder = MetadataFactory.CreateFolderMetadata(databaseMetadata, rootTableFolderKey.ToString(), "Tables");
|
||||
_folderMetadata.AddRange(rootTableFolderKey.ToString(), new List<FolderMetadata> {tableFolder});
|
||||
rootTableFolderKey.Append($".{tableFolder.Name}");
|
||||
|
||||
@@ -782,7 +785,7 @@ namespace Microsoft.Kusto.ServiceLayer.DataSource
|
||||
continue;
|
||||
}
|
||||
|
||||
var folder = DataSourceFactory.CreateFolderMetadata(objectMetadata, rootTableFolderKey, columnGroup.Key);
|
||||
var folder = MetadataFactory.CreateFolderMetadata(objectMetadata, rootTableFolderKey, columnGroup.Key);
|
||||
tableFolders.Add(folder);
|
||||
}
|
||||
|
||||
@@ -800,7 +803,7 @@ namespace Microsoft.Kusto.ServiceLayer.DataSource
|
||||
|
||||
// create Functions folder to hold functions folders
|
||||
var rootFunctionFolderKey = $"{databaseMetadata.Urn}";
|
||||
var rootFunctionFolder = DataSourceFactory.CreateFolderMetadata(databaseMetadata, rootFunctionFolderKey, "Functions");
|
||||
var rootFunctionFolder = MetadataFactory.CreateFolderMetadata(databaseMetadata, rootFunctionFolderKey, "Functions");
|
||||
_folderMetadata.AddRange(rootFunctionFolderKey, new List<FolderMetadata> {rootFunctionFolder});
|
||||
|
||||
// create each folder to hold functions
|
||||
@@ -834,13 +837,13 @@ namespace Microsoft.Kusto.ServiceLayer.DataSource
|
||||
var topFolder = subFolders.First();
|
||||
|
||||
var folderKey = functionFolder.Urn;
|
||||
var folder = DataSourceFactory.CreateFolderMetadata(databaseMetadata, folderKey, topFolder);
|
||||
var folder = MetadataFactory.CreateFolderMetadata(databaseMetadata, folderKey, topFolder);
|
||||
functionFolders.SafeAdd(folderKey, folder);
|
||||
|
||||
for (int i = 1; i < subFolders.Length; i++)
|
||||
{
|
||||
folderKey = $"{folderKey}.{subFolders[i - 1]}";
|
||||
var subFolder = DataSourceFactory.CreateFolderMetadata(databaseMetadata, folderKey, subFolders[i]);
|
||||
var subFolder = MetadataFactory.CreateFolderMetadata(databaseMetadata, folderKey, subFolders[i]);
|
||||
functionFolders.SafeAdd(folderKey, subFolder);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user