mirror of
https://github.com/ckaczor/sqltoolsservice.git
synced 2026-02-16 18:47:57 -05:00
fixed the oe integration test failing in appveyor (#339)
* fixed the oe integration test failing in appveyor
This commit is contained in:
@@ -298,6 +298,10 @@ namespace Microsoft.SqlTools.ServiceLayer.ObjectExplorer.Nodes
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch(Exception ex)
|
||||||
|
{
|
||||||
|
Logger.Write(LogLevel.Error, $"Failed populating oe children error:{ex.Message} {ex.Source}");
|
||||||
|
}
|
||||||
finally
|
finally
|
||||||
{
|
{
|
||||||
EndChildrenInit();
|
EndChildrenInit();
|
||||||
|
|||||||
@@ -183,7 +183,7 @@ namespace Microsoft.SqlTools.ServiceLayer.ObjectExplorer
|
|||||||
internal async Task<ObjectExplorerSession> DoCreateSession(ConnectionDetails connectionDetails, string uri)
|
internal async Task<ObjectExplorerSession> DoCreateSession(ConnectionDetails connectionDetails, string uri)
|
||||||
{
|
{
|
||||||
ObjectExplorerSession session;
|
ObjectExplorerSession session;
|
||||||
|
connectionDetails.PersistSecurityInfo = true;
|
||||||
ConnectParams connectParams = new ConnectParams() { OwnerUri = uri, Connection = connectionDetails };
|
ConnectParams connectParams = new ConnectParams() { OwnerUri = uri, Connection = connectionDetails };
|
||||||
|
|
||||||
ConnectionCompleteParams connectionResult = await Connect(connectParams);
|
ConnectionCompleteParams connectionResult = await Connect(connectParams);
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Globalization;
|
using System.Globalization;
|
||||||
using Microsoft.SqlServer.Management.Smo;
|
using Microsoft.SqlServer.Management.Smo;
|
||||||
|
using Microsoft.SqlTools.Utility;
|
||||||
|
|
||||||
namespace Microsoft.SqlTools.ServiceLayer.ObjectExplorer.SmoModel
|
namespace Microsoft.SqlTools.ServiceLayer.ObjectExplorer.SmoModel
|
||||||
{
|
{
|
||||||
@@ -55,19 +56,26 @@ namespace Microsoft.SqlTools.ServiceLayer.ObjectExplorer.SmoModel
|
|||||||
|
|
||||||
private static string GetCustomizedLabel(Column column, UserDefinedDataTypeCollection uddts)
|
private static string GetCustomizedLabel(Column column, UserDefinedDataTypeCollection uddts)
|
||||||
{
|
{
|
||||||
if (column.Computed)
|
try
|
||||||
{
|
{
|
||||||
return GetComutedColumnLabel(column, uddts);
|
if (column.Computed)
|
||||||
|
{
|
||||||
|
return GetComputedColumnLabel(column, uddts);
|
||||||
|
}
|
||||||
|
else if (column.IsColumnSet)
|
||||||
|
{
|
||||||
|
return GetColumnSetLabel(column, uddts);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return GetSimpleColumnLabel(column, uddts);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (column.IsColumnSet)
|
catch(Exception ex)
|
||||||
{
|
{
|
||||||
return GetColumnSetLabel(column, uddts);
|
Logger.Write(LogLevel.Error, $"Failed to get customized column name. error:{ex.Message}");
|
||||||
}
|
}
|
||||||
else
|
return string.Empty;
|
||||||
{
|
|
||||||
return GetSimpleColumnLabel(column, uddts);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private static string GetTypeSpecifierLabel(DataType dataType, UserDefinedDataTypeCollection uddts)
|
private static string GetTypeSpecifierLabel(DataType dataType, UserDefinedDataTypeCollection uddts)
|
||||||
@@ -88,10 +96,16 @@ namespace Microsoft.SqlTools.ServiceLayer.ObjectExplorer.SmoModel
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(dataType.SqlDataType == SqlDataType.UserDefinedDataType && uddts != null && uddts.Contains(dataType.Name))
|
if(dataType.SqlDataType == SqlDataType.UserDefinedDataType && uddts != null)
|
||||||
{
|
{
|
||||||
var uddt = uddts[dataType.Name];
|
foreach (UserDefinedDataType item in uddts)
|
||||||
typeName += $"({uddt.SystemType})";
|
{
|
||||||
|
if(item.Name == dataType.Name)
|
||||||
|
{
|
||||||
|
typeName += $"({item.SystemType})";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// These types support Length
|
// These types support Length
|
||||||
@@ -214,7 +228,7 @@ namespace Microsoft.SqlTools.ServiceLayer.ObjectExplorer.SmoModel
|
|||||||
isNullable);
|
isNullable);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static string GetComutedColumnLabel(Column column, UserDefinedDataTypeCollection uddts)
|
private static string GetComputedColumnLabel(Column column, UserDefinedDataTypeCollection uddts)
|
||||||
{
|
{
|
||||||
string columnType = null;
|
string columnType = null;
|
||||||
|
|
||||||
|
|||||||
@@ -208,7 +208,7 @@ namespace Microsoft.SqlTools.ServiceLayer.IntegrationTests.ObjectExplorer
|
|||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
Console.WriteLine($"Failed to run OE test. uri:{uri} error:{ex.Message}");
|
Console.WriteLine($"Failed to run OE test. uri:{uri} error:{ex.Message} {ex.StackTrace}");
|
||||||
Assert.False(true, ex.Message);
|
Assert.False(true, ex.Message);
|
||||||
}
|
}
|
||||||
finally
|
finally
|
||||||
|
|||||||
@@ -1,3 +1,6 @@
|
|||||||
|
NodeType: Table Label: dbo.tableWithColumnset
|
||||||
|
NodeType: Column Label: i (int, null)
|
||||||
|
NodeType: Column Label: cs (Column Set, null)
|
||||||
NodeType: Table Label: Employee_Temporal (System-Versioned)
|
NodeType: Table Label: Employee_Temporal (System-Versioned)
|
||||||
NodeType: Column Label: BusinessEntityID (PK, int, not null)
|
NodeType: Column Label: BusinessEntityID (PK, int, not null)
|
||||||
NodeType: Column Label: NationalIDNumber (nvarchar(15), not null)
|
NodeType: Column Label: NationalIDNumber (nvarchar(15), not null)
|
||||||
|
|||||||
@@ -389,4 +389,6 @@
|
|||||||
[LoginID] ASC
|
[LoginID] ASC
|
||||||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
|
/****** Column Set ***/
|
||||||
|
CREATE TABLE tableWithColumnset (i int SPARSE, cs xml column_set FOR ALL_SPARSE_COLUMNS);
|
||||||
Reference in New Issue
Block a user