mirror of
https://github.com/ckaczor/sqltoolsservice.git
synced 2026-02-17 02:51:45 -05:00
Include inline functions as table-valued functions in Object Explorer (#594)
This commit is contained in:
@@ -324,6 +324,7 @@
|
|||||||
<Filters >
|
<Filters >
|
||||||
<Filter Property="FunctionType" Type="Enum">
|
<Filter Property="FunctionType" Type="Enum">
|
||||||
<Value>UserDefinedFunctionType.Table</Value>
|
<Value>UserDefinedFunctionType.Table</Value>
|
||||||
|
<Value>UserDefinedFunctionType.Inline</Value>
|
||||||
</Filter>
|
</Filter>
|
||||||
<Filter Property="IsSystemObject" Value="0" Type="bool" />
|
<Filter Property="IsSystemObject" Value="0" Type="bool" />
|
||||||
</Filters>
|
</Filters>
|
||||||
@@ -332,6 +333,7 @@
|
|||||||
<Filters >
|
<Filters >
|
||||||
<Filter Property="FunctionType" Type="Enum">
|
<Filter Property="FunctionType" Type="Enum">
|
||||||
<Value>UserDefinedFunctionType.Table</Value>
|
<Value>UserDefinedFunctionType.Table</Value>
|
||||||
|
<Value>UserDefinedFunctionType.Inline</Value>
|
||||||
</Filter>
|
</Filter>
|
||||||
<Filter Property="IsSystemObject" Value="1" Type="bool" />
|
<Filter Property="IsSystemObject" Value="1" Type="bool" />
|
||||||
</Filters>
|
</Filters>
|
||||||
|
|||||||
@@ -2723,7 +2723,8 @@ namespace Microsoft.SqlTools.ServiceLayer.ObjectExplorer.SmoModel
|
|||||||
Type = typeof(Enum),
|
Type = typeof(Enum),
|
||||||
Values = new List<object>
|
Values = new List<object>
|
||||||
{
|
{
|
||||||
{ UserDefinedFunctionType.Table }
|
{ UserDefinedFunctionType.Table },
|
||||||
|
{ UserDefinedFunctionType.Inline }
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
filters.Add(new NodeFilter
|
filters.Add(new NodeFilter
|
||||||
@@ -2769,7 +2770,8 @@ namespace Microsoft.SqlTools.ServiceLayer.ObjectExplorer.SmoModel
|
|||||||
Type = typeof(Enum),
|
Type = typeof(Enum),
|
||||||
Values = new List<object>
|
Values = new List<object>
|
||||||
{
|
{
|
||||||
{ UserDefinedFunctionType.Table }
|
{ UserDefinedFunctionType.Table },
|
||||||
|
{ UserDefinedFunctionType.Inline }
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
filters.Add(new NodeFilter
|
filters.Add(new NodeFilter
|
||||||
|
|||||||
@@ -71,6 +71,16 @@ namespace Microsoft.SqlTools.ServiceLayer.UnitTests.ObjectExplorer
|
|||||||
Assert.False(querier.ValidFor.HasFlag(ValidForFlag.SqlDw));
|
Assert.False(querier.ValidFor.HasFlag(ValidForFlag.SqlDw));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Fact]
|
||||||
|
public void TableValuedFunctionsIncludeInlineFunctions()
|
||||||
|
{
|
||||||
|
var tableFactory = new TableValuedFunctionsChildFactory();
|
||||||
|
var filters = tableFactory.Filters;
|
||||||
|
Assert.True(filters.ToList().Any(filter => {
|
||||||
|
return filter.Values.Contains(UserDefinedFunctionType.Table) && filter.Values.Contains(UserDefinedFunctionType.Inline);
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
|
||||||
private SmoQuerier GetSmoQuerier(Type querierType)
|
private SmoQuerier GetSmoQuerier(Type querierType)
|
||||||
{
|
{
|
||||||
// Given the extension type loader is set to find SmoCollectionQuerier objects
|
// Given the extension type loader is set to find SmoCollectionQuerier objects
|
||||||
|
|||||||
Reference in New Issue
Block a user