Remove redundant SQL from SQLite rebuild migration
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
using Microsoft.Data.Sqlite;
|
||||
using Microsoft.AspNetCore.Builder;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
@@ -203,6 +205,23 @@ public sealed class HostingCoverageTests
|
||||
Assert.Equal(1, rolemasterHistoryCount);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void AuthorizationRolesAndCampaignDeletion_MigrationScript_DoesNotMixUsersSqlIntoCharactersRebuild()
|
||||
{
|
||||
var dbPath = Path.Combine(Path.GetTempPath(), $"rpgroller-migration-script-{Guid.NewGuid():N}.db");
|
||||
var options = new DbContextOptionsBuilder<RpgRollerDbContext>().UseSqlite($"Data Source={dbPath}").Options;
|
||||
|
||||
using var db = new RpgRollerDbContext(options);
|
||||
var migrator = db.GetService<IMigrator>();
|
||||
var script = migrator.GenerateScript(
|
||||
fromMigration: "20260226131003_AddSkillGroupPrototypes",
|
||||
toMigration: "20260226160859_AddAuthorizationRolesAndCampaignDeletion");
|
||||
|
||||
Assert.Contains("""ALTER TABLE "Users" ADD "Roles" TEXT NOT NULL DEFAULT 'admin';""", script);
|
||||
Assert.Contains("""CREATE TABLE "ef_temp_Characters" (""", script);
|
||||
Assert.DoesNotContain("UPDATE Users", script);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void InitializeRpgRollerState_MigratesCopiedDevelopmentDatabaseAndPreservesD6Rolling()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user