Skip to content

Commit 95c5f85

Browse files
committed
Address certain issues in tests of key generator upgrade process
1 parent f2cdd26 commit 95c5f85

3 files changed

Lines changed: 47 additions & 22 deletions

File tree

Orm/Xtensive.Orm.Tests/Upgrade/GeneratorUpgrade/MultidatabaseTest.cs

Lines changed: 32 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,9 @@
44
// Created by: Alexey Kulakov
55
// Created: 2019.12.10
66

7-
using System;
87
using System.Linq;
9-
using NUnit.Framework;
10-
using Xtensive.Collections;
118
using Xtensive.Core;
129
using 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

1911
namespace 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
}

Orm/Xtensive.Orm.Tests/Upgrade/GeneratorUpgrade/MultischemaTest.cs

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,9 @@
66

77
using System;
88
using System.Linq;
9-
using NUnit.Framework;
109
using Xtensive.Collections;
1110
using Xtensive.Core;
1211
using 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;
1812

1913
namespace Xtensive.Orm.Tests.Upgrade.GeneratorUpgrade
2014
{
@@ -27,9 +21,19 @@ protected override void ApplyCustomConfigurationSettings(DomainConfiguration con
2721
{
2822
base.ApplyCustomConfigurationSettings(configuration);
2923
configuration.DefaultSchema = DefaultSchema;
30-
var namespaces = configuration.Types.GroupBy(t => t.Namespace).Select(g => g.Key).ToArray();
31-
configuration.MappingRules.Map(namespaces[0]).ToSchema(DefaultSchema);
32-
configuration.MappingRules.Map(namespaces[1]).ToSchema(AlternativeSchema);
24+
var namespaces = configuration.Types
25+
.Where(t => t.Namespace.Contains("Xtensive.Orm.Tests.Upgrade.GeneratorUpgrade"))
26+
.GroupBy(t => t.Namespace)
27+
.Select(g => g.Key)
28+
.ToArray();
29+
if (namespaces.Length == 0) {
30+
configuration.MappingRules.Map("Xtensive.Orm.Tests.Upgrade.GeneratorUpgrade.ReferenceModel.Part1").ToSchema(DefaultSchema);
31+
configuration.MappingRules.Map("Xtensive.Orm.Tests.Upgrade.GeneratorUpgrade.ReferenceModel.Part2").ToSchema(AlternativeSchema);
32+
}
33+
else {
34+
configuration.MappingRules.Map(namespaces[0]).ToSchema(DefaultSchema);
35+
configuration.MappingRules.Map(namespaces[1]).ToSchema(AlternativeSchema);
36+
}
3337
}
3438
}
3539
}

Orm/Xtensive.Orm.Tests/Upgrade/GeneratorUpgrade/SimpleSchemaTest.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -464,7 +464,7 @@ private Domain BuildUpgradedDomain(DomainUpgradeMode upgradeMode, TypeRegistrati
464464

465465
private DomainConfiguration BuildDomainConfiguration(DomainUpgradeMode upgradeMode, TypeRegistration[] registrations)
466466
{
467-
var configuration = BuildDomainConfiguration();
467+
var configuration = DomainConfigurationFactory.Create();
468468
registrations.ForEach(t => configuration.Types.Register(t));
469469
configuration.UpgradeMode = upgradeMode;
470470
ApplyCustomConfigurationSettings(configuration);
@@ -479,7 +479,7 @@ private DomainConfiguration BuildDomainConfiguration()
479479
return configuration;
480480
}
481481

482-
private void InitializeGenerators(DomainConfiguration configuration, long seedIncrease = 0, long cacheSizeIncrease = 0)
482+
protected virtual void InitializeGenerators(DomainConfiguration configuration, long seedIncrease = 0, long cacheSizeIncrease = 0)
483483
{
484484
configuration.KeyGenerators.Add(new KeyGeneratorConfiguration("Int16") { Seed = 16 + seedIncrease, CacheSize = 16 + cacheSizeIncrease });
485485
configuration.KeyGenerators.Add(new KeyGeneratorConfiguration("Int32") { Seed = 32 + seedIncrease, CacheSize = 32 + cacheSizeIncrease });

0 commit comments

Comments
 (0)