本文整理汇总了C#中Migrator.UseCustomBootstrapping方法的典型用法代码示例。如果您正苦于以下问题:C# Migrator.UseCustomBootstrapping方法的具体用法?C# Migrator.UseCustomBootstrapping怎么用?C# Migrator.UseCustomBootstrapping使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Migrator
的用法示例。
在下文中一共展示了Migrator.UseCustomBootstrapping方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TestCustomBootstrapping
public void TestCustomBootstrapping()
{
// use a Module selection to verify that the bootstrapping is still considering *all* migrations
_options.ModuleSelector = moduleName => moduleName == Migration2.Module;
Migrator migrator = new Migrator(ConnectionString, ProviderName, _options);
IBootstrapper bootstrapper = MockRepository.GenerateStrictMock<IBootstrapper>();
bootstrapper.Expect(b => b.BeginBootstrapping(null, null)).IgnoreArguments();
for (int i = 0; i < Migrations.Count; i++) // assume that all migrations were already performed
{
long timestamp = Timestamps[i];
bootstrapper.Expect(b => b.IsContained(Arg<IMigrationMetadata>.Matches(m => m.Timestamp == timestamp))).Return(true);
}
bootstrapper.Expect(b => b.EndBootstrapping(null, null)).IgnoreArguments();
migrator.UseCustomBootstrapping(bootstrapper);
migrator.MigrateAll(typeof(Migration1).Assembly);
// assert Migration1 table was *not* created
DataTable table = GetTable(new Migration1().Tables[0].Name);
Assert.IsNull(table);
// assert Versioning table has necessary entries
DataTable versioningTable = GetTable(_options.VersioningTableName);
Assert.AreEqual(Migrations.Count, versioningTable.Rows.Count, "The versioning table is missing entries.");
bootstrapper.VerifyAllExpectations();
}