예제 #1
0
        public void WithNoMigrationNumberTheTitleIsUsedInIdInstead()
        {
            var expectedTitle = new MigrationDetails().id + nameof(TimedTestMigration);

            var migration = new TimedTestMigration();

            runner.ApplyMigrations(new[] { migration });
            DidUpdateVersionAndMigrationDocuments();
            Assert.NotNull(updatedMigrationDocs.First().Value.id);
            Assert.True(updatedMigrationDocs.First().Value.id.Equals(expectedTitle));
        }
        private void LoadMigrationDetails()
        {
            var migrator    = GetMigrator();
            var selectItems = migrator.GetPendingMigrations().Select(v => new SelectListItem
            {
                Text  = GetEFVersionDisplayText(v),
                Value = v
            });

            var currentVersion = migrator.GetDatabaseMigrations().FirstOrDefault() ?? "N/A";

            PendingMigrations = new SelectList(selectItems, "Value", "Text", selectItems.LastOrDefault());
            Entity            = new MigrationDetails
            {
                CurrentVersion             = currentVersion,
                CurrentVersionDisplayValue = GetEFVersionDisplayText(currentVersion),
                TargetVersion = selectItems.Select(si => si.Value).LastOrDefault(),
            };
        }