未验证 提交 40dc0d3c 编写于 作者: S Shay Rojansky 提交者: GitHub

Stop scaffolding index included/covered properties (#2195)

Fixes #2191
上级 126a6b68
......@@ -666,7 +666,8 @@ deptype IN ('e', 'x')
}
}
index[NpgsqlAnnotationNames.IndexInclude] = nonKeyColumns.ToArray();
// Scaffolding included/covered properties is currently blocked, see #2194
// index[NpgsqlAnnotationNames.IndexInclude] = nonKeyColumns.ToArray();
}
if (record.GetValueOrDefault<string>("pred") is { } predicate)
......
......@@ -1865,16 +1865,20 @@ public virtual async Task Create_index_with_include()
var index = Assert.Single(table.Indexes);
Assert.Equal(1, index.Columns.Count);
Assert.Contains(table.Columns.Single(c => c.Name == "Name"), index.Columns);
// Scaffolding included/covered properties is currently blocked, see #2194
var includedColumns = (string[])index[NpgsqlAnnotationNames.IndexInclude]!;
if (TestEnvironment.PostgresVersion.AtLeast(11))
{
Assert.Contains("FirstName", includedColumns);
Assert.Contains("last_name", includedColumns);
}
else
{
Assert.Null(includedColumns);
}
Assert.Null(includedColumns);
// if (TestEnvironment.PostgresVersion.AtLeast(11))
// {
// Assert.Contains("FirstName", includedColumns);
// Assert.Contains("last_name", includedColumns);
// }
// else
// {
// Assert.Null(includedColumns);
// }
});
AssertSql(TestEnvironment.PostgresVersion.AtLeast(11)
......@@ -1905,16 +1909,20 @@ public virtual async Task Create_index_with_include_and_filter()
Assert.Equal(@"(""Name"" IS NOT NULL)", index.Filter);
Assert.Equal(1, index.Columns.Count);
Assert.Contains(table.Columns.Single(c => c.Name == "Name"), index.Columns);
// Scaffolding included/covered properties is currently blocked, see #2194
var includedColumns = (string[])index[NpgsqlAnnotationNames.IndexInclude]!;
if (TestEnvironment.PostgresVersion.AtLeast(11))
{
Assert.Contains("FirstName", includedColumns);
Assert.Contains("LastName", includedColumns);
}
else
{
Assert.Null(includedColumns);
}
Assert.Null(includedColumns);
// if (TestEnvironment.PostgresVersion.AtLeast(11))
// {
// Assert.Contains("FirstName", includedColumns);
// Assert.Contains("LastName", includedColumns);
// }
// else
// {
// Assert.Null(includedColumns);
// }
});
AssertSql(TestEnvironment.PostgresVersion.AtLeast(11)
......@@ -1945,16 +1953,20 @@ public virtual async Task Create_index_unique_with_include()
Assert.True(index.IsUnique);
Assert.Equal(1, index.Columns.Count);
Assert.Contains(table.Columns.Single(c => c.Name == "Name"), index.Columns);
// Scaffolding included/covered properties is currently blocked, see #2194
var includedColumns = (string[])index[NpgsqlAnnotationNames.IndexInclude]!;
if (TestEnvironment.PostgresVersion.AtLeast(11))
{
Assert.Contains("FirstName", includedColumns);
Assert.Contains("LastName", includedColumns);
}
else
{
Assert.Null(includedColumns);
}
Assert.Null(includedColumns);
// if (TestEnvironment.PostgresVersion.AtLeast(11))
// {
// Assert.Contains("FirstName", includedColumns);
// Assert.Contains("LastName", includedColumns);
// }
// else
// {
// Assert.Null(includedColumns);
// }
});
AssertSql(TestEnvironment.PostgresVersion.AtLeast(11)
......@@ -1987,16 +1999,20 @@ public virtual async Task Create_index_unique_with_include_and_filter()
Assert.Equal(@"(""Name"" IS NOT NULL)", index.Filter);
Assert.Equal(1, index.Columns.Count);
Assert.Contains(table.Columns.Single(c => c.Name == "Name"), index.Columns);
// Scaffolding included/covered properties is currently blocked, see #2194
var includedColumns = (string[])index[NpgsqlAnnotationNames.IndexInclude]!;
if (TestEnvironment.PostgresVersion.AtLeast(11))
{
Assert.Contains("FirstName", includedColumns);
Assert.Contains("LastName", includedColumns);
}
else
{
Assert.Null(includedColumns);
}
Assert.Null(includedColumns);
// if (TestEnvironment.PostgresVersion.AtLeast(11))
// {
// Assert.Contains("FirstName", includedColumns);
// Assert.Contains("LastName", includedColumns);
// }
// else
// {
// Assert.Null(includedColumns);
// }
});
AssertSql(TestEnvironment.PostgresVersion.AtLeast(11)
......
......@@ -1728,7 +1728,9 @@ public void Index_covering()
var indexWith = table.Indexes.Single(i => i.Name == "ix_with");
Assert.Equal("a", indexWith.Columns.Single().Name);
Assert.Equal(new[] { "b", "c" }, indexWith.FindAnnotation(NpgsqlAnnotationNames.IndexInclude).Value);
// Scaffolding included/covered properties is currently blocked, see #2194
Assert.Null(indexWith.FindAnnotation(NpgsqlAnnotationNames.IndexInclude));
// Assert.Equal(new[] { "b", "c" }, indexWith.FindAnnotation(NpgsqlAnnotationNames.IndexInclude).Value);
var indexWithout = table.Indexes.Single(i => i.Name == "ix_without");
Assert.Equal(new[] { "a", "b", "c" }, indexWithout.Columns.Select(i => i.Name).ToArray());
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册