44// Created by: Alexey Kulakov
55// Created: 2019.12.10
66
7- using System ;
87using System . Linq ;
9- using NUnit . Framework ;
10- using Xtensive . Collections ;
118using Xtensive . Core ;
129using Xtensive . Orm . Configuration ;
13- using Xtensive . Orm . Providers ;
14- using Xtensive . Sql ;
15- using Xtensive . Sql . Compiler ;
16- using refModel = Xtensive . Orm . Tests . Upgrade . GeneratorUpgrade . ReferenceModel ;
17- using lessGeneratorsModel = Xtensive . Orm . Tests . Upgrade . GeneratorUpgrade . LessGenerators ;
1810
1911namespace Xtensive . Orm . Tests . Upgrade . GeneratorUpgrade
2012{
@@ -28,11 +20,40 @@ protected override void ApplyCustomConfigurationSettings(DomainConfiguration con
2820 base . ApplyCustomConfigurationSettings ( configuration ) ;
2921 configuration . DefaultDatabase = DefaultDatabase ;
3022 configuration . DefaultSchema = WellKnownSchemas . SqlServerDefaultSchema ;
31- var namespaces = configuration . Types . GroupBy ( t => t . Namespace ) . Select ( g => g . Key ) . ToArray ( ) ;
32- configuration . MappingRules . Map ( namespaces [ 0 ] ) . ToDatabase ( DefaultDatabase ) ;
33- configuration . MappingRules . Map ( namespaces [ 0 ] ) . ToDatabase ( AlternativeDatabase ) ;
23+ var namespaces = configuration . Types
24+ . Where ( t => t . Namespace . Contains ( "Xtensive.Orm.Tests.Upgrade.GeneratorUpgrade" ) )
25+ . GroupBy ( t => t . Namespace )
26+ . Select ( g => g . Key )
27+ . ToArray ( ) ;
28+ if ( namespaces . Length == 0 ) {
29+ configuration . MappingRules . Map ( "Xtensive.Orm.Tests.Upgrade.GeneratorUpgrade.ReferenceModel.Part1" ) . ToDatabase ( DefaultDatabase ) ;
30+ configuration . MappingRules . Map ( "Xtensive.Orm.Tests.Upgrade.GeneratorUpgrade.ReferenceModel.Part2" ) . ToDatabase ( AlternativeDatabase ) ;
31+ }
32+ else {
33+ configuration . MappingRules . Map ( namespaces [ 0 ] ) . ToDatabase ( DefaultDatabase ) ;
34+ configuration . MappingRules . Map ( namespaces [ 1 ] ) . ToDatabase ( AlternativeDatabase ) ;
35+ }
3436 }
3537
3638 protected override string [ ] GetUsedCatalogs ( ) => new [ ] { DefaultDatabase , AlternativeDatabase } ;
39+
40+ protected override void InitializeGenerators ( DomainConfiguration configuration , long seedIncrease = 0 , long cacheSizeIncrease = 0 )
41+ {
42+ configuration . KeyGenerators . Add ( new KeyGeneratorConfiguration ( "Int16" ) { Seed = 16 + seedIncrease , CacheSize = 16 + cacheSizeIncrease , Database = DefaultDatabase } ) ;
43+ configuration . KeyGenerators . Add ( new KeyGeneratorConfiguration ( "Int32" ) { Seed = 32 + seedIncrease , CacheSize = 32 + cacheSizeIncrease , Database = DefaultDatabase } ) ;
44+ configuration . KeyGenerators . Add ( new KeyGeneratorConfiguration ( "Int64" ) { Seed = 64 + seedIncrease , CacheSize = 64 + cacheSizeIncrease , Database = DefaultDatabase } ) ;
45+
46+ configuration . KeyGenerators . Add ( new KeyGeneratorConfiguration ( "Int16" ) { Seed = 16 + seedIncrease , CacheSize = 16 + cacheSizeIncrease , Database = AlternativeDatabase } ) ;
47+ configuration . KeyGenerators . Add ( new KeyGeneratorConfiguration ( "Int32" ) { Seed = 32 + seedIncrease , CacheSize = 32 + cacheSizeIncrease , Database = AlternativeDatabase } ) ;
48+ configuration . KeyGenerators . Add ( new KeyGeneratorConfiguration ( "Int64" ) { Seed = 64 + seedIncrease , CacheSize = 64 + cacheSizeIncrease , Database = AlternativeDatabase } ) ;
49+
50+ configuration . KeyGenerators . Add ( new KeyGeneratorConfiguration ( "NamedShortKeyEntityPart1" ) { Seed = 16 + seedIncrease , CacheSize = 16 + cacheSizeIncrease , Database = DefaultDatabase } ) ;
51+ configuration . KeyGenerators . Add ( new KeyGeneratorConfiguration ( "NamedIntKeyEntityPart1" ) { Seed = 32 + seedIncrease , CacheSize = 32 + cacheSizeIncrease , Database = DefaultDatabase } ) ;
52+ configuration . KeyGenerators . Add ( new KeyGeneratorConfiguration ( "NamedLongKeyEntityPart1" ) { Seed = 64 + seedIncrease , CacheSize = 64 + cacheSizeIncrease , Database = DefaultDatabase } ) ;
53+
54+ configuration . KeyGenerators . Add ( new KeyGeneratorConfiguration ( "NamedShortKeyEntityPart2" ) { Seed = 16 + seedIncrease , CacheSize = 16 + cacheSizeIncrease , Database = AlternativeDatabase } ) ;
55+ configuration . KeyGenerators . Add ( new KeyGeneratorConfiguration ( "NamedIntKeyEntityPart2" ) { Seed = 32 + seedIncrease , CacheSize = 32 + cacheSizeIncrease , Database = AlternativeDatabase } ) ;
56+ configuration . KeyGenerators . Add ( new KeyGeneratorConfiguration ( "NamedLongKeyEntityPart2" ) { Seed = 64 + seedIncrease , CacheSize = 64 + cacheSizeIncrease , Database = AlternativeDatabase } ) ;
57+ }
3758 }
3859}
0 commit comments