forked from npgsql/efcore.pg
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathNpgsqlModelBuilderGenericTest.cs
72 lines (60 loc) · 3.11 KB
/
NpgsqlModelBuilderGenericTest.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
using Xunit.Sdk;
namespace Npgsql.EntityFrameworkCore.PostgreSQL.ModelBuilding;
#nullable enable
public class NpgsqlModelBuilderGenericTest : NpgsqlModelBuilderTestBase
{
public class NpgsqlGenericNonRelationship(NpgsqlModelBuilderFixture fixture) : NpgsqlNonRelationship(fixture)
{
// PostgreSQL actually does support mapping multi-dimensional arrays, so no exception is thrown as expected
protected override void Mapping_throws_for_non_ignored_three_dimensional_array()
=> Assert.Throws<ThrowsException>(() => base.Mapping_throws_for_non_ignored_three_dimensional_array());
protected override TestModelBuilder CreateModelBuilder(
Action<ModelConfigurationBuilder>? configure)
=> new GenericTestModelBuilder(Fixture, configure);
}
public class NpgsqlGenericComplexType(NpgsqlModelBuilderFixture fixture) : NpgsqlComplexType(fixture)
{
protected override TestModelBuilder CreateModelBuilder(
Action<ModelConfigurationBuilder>? configure)
=> new GenericTestModelBuilder(Fixture, configure);
}
public class NpgsqlGenericInheritance(NpgsqlModelBuilderFixture fixture) : NpgsqlInheritance(fixture)
{
protected override TestModelBuilder CreateModelBuilder(
Action<ModelConfigurationBuilder>? configure)
=> new GenericTestModelBuilder(Fixture, configure);
}
public class NpgsqlGenericOneToMany(NpgsqlModelBuilderFixture fixture) : NpgsqlOneToMany(fixture)
{
protected override TestModelBuilder CreateModelBuilder(
Action<ModelConfigurationBuilder>? configure)
=> new GenericTestModelBuilder(Fixture, configure);
}
public class NpgsqlGenericManyToOne(NpgsqlModelBuilderFixture fixture) : NpgsqlManyToOne(fixture)
{
protected override TestModelBuilder CreateModelBuilder(
Action<ModelConfigurationBuilder>? configure)
=> new GenericTestModelBuilder(Fixture, configure);
}
public class NpgsqlGenericOneToOne(NpgsqlModelBuilderFixture fixture) : NpgsqlOneToOne(fixture)
{
protected override TestModelBuilder CreateModelBuilder(
Action<ModelConfigurationBuilder>? configure)
=> new GenericTestModelBuilder(Fixture, configure);
}
public class NpgsqlGenericManyToMany(NpgsqlModelBuilderFixture fixture) : NpgsqlManyToMany(fixture)
{
protected override TestModelBuilder CreateModelBuilder(
Action<ModelConfigurationBuilder>? configure)
=> new GenericTestModelBuilder(Fixture, configure);
}
public class NpgsqlGenericOwnedTypes(NpgsqlModelBuilderFixture fixture) : NpgsqlOwnedTypes(fixture)
{
// PostgreSQL stored procedures do not support result columns
public override void Can_use_sproc_mapping_with_owned_reference()
=> Assert.Throws<InvalidOperationException>(() => base.Can_use_sproc_mapping_with_owned_reference());
protected override TestModelBuilder CreateModelBuilder(
Action<ModelConfigurationBuilder>? configure)
=> new GenericTestModelBuilder(Fixture, configure);
}
}