< Summary

Line coverage
0%
Covered lines: 0
Uncovered lines: 200
Coverable lines: 200
Total lines: 257
Line coverage: 0%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
File 1: Up(...)100%210%
File 1: Down(...)100%210%
File 2: BuildTargetModel(...)100%210%

File(s)

/home/runner/work/elsa-core/elsa-core/src/modules/Elsa.Persistence.EFCore.Sqlite/Migrations/Identity/20260823231406_PerTenantIdentityUniqueness.cs

#LineLine coverage
 1using Microsoft.EntityFrameworkCore.Migrations;
 2
 3#nullable disable
 4
 5namespace Elsa.Persistence.EFCore.Sqlite.Migrations.Identity
 6{
 7    /// <inheritdoc />
 8    public partial class PerTenantIdentityUniqueness : Migration
 9    {
 10        /// <inheritdoc />
 11        protected override void Up(MigrationBuilder migrationBuilder)
 12        {
 013            migrationBuilder.DropIndex(
 014                name: "IX_User_Name",
 015                schema: "Elsa",
 016                table: "Users");
 17
 018            migrationBuilder.DropIndex(
 019                name: "IX_Role_Name",
 020                schema: "Elsa",
 021                table: "Roles");
 22
 023            migrationBuilder.DropIndex(
 024                name: "IX_Application_ClientId",
 025                schema: "Elsa",
 026                table: "Applications");
 27
 028            migrationBuilder.DropIndex(
 029                name: "IX_Application_Name",
 030                schema: "Elsa",
 031                table: "Applications");
 32
 033            migrationBuilder.CreateIndex(
 034                name: "IX_User_TenantId_Name",
 035                schema: "Elsa",
 036                table: "Users",
 037                columns: new[] { "TenantId", "Name" },
 038                unique: true);
 39
 040            migrationBuilder.CreateIndex(
 041                name: "IX_Role_TenantId_Name",
 042                schema: "Elsa",
 043                table: "Roles",
 044                columns: new[] { "TenantId", "Name" },
 045                unique: true);
 46
 047            migrationBuilder.CreateIndex(
 048                name: "IX_Application_TenantId_ClientId",
 049                schema: "Elsa",
 050                table: "Applications",
 051                columns: new[] { "TenantId", "ClientId" },
 052                unique: true);
 53
 054            migrationBuilder.CreateIndex(
 055                name: "IX_Application_TenantId_Name",
 056                schema: "Elsa",
 057                table: "Applications",
 058                columns: new[] { "TenantId", "Name" },
 059                unique: true);
 060        }
 61
 62        /// <inheritdoc />
 63        protected override void Down(MigrationBuilder migrationBuilder)
 64        {
 065            migrationBuilder.DropIndex(
 066                name: "IX_User_TenantId_Name",
 067                schema: "Elsa",
 068                table: "Users");
 69
 070            migrationBuilder.DropIndex(
 071                name: "IX_Role_TenantId_Name",
 072                schema: "Elsa",
 073                table: "Roles");
 74
 075            migrationBuilder.DropIndex(
 076                name: "IX_Application_TenantId_ClientId",
 077                schema: "Elsa",
 078                table: "Applications");
 79
 080            migrationBuilder.DropIndex(
 081                name: "IX_Application_TenantId_Name",
 082                schema: "Elsa",
 083                table: "Applications");
 84
 085            migrationBuilder.CreateIndex(
 086                name: "IX_User_Name",
 087                schema: "Elsa",
 088                table: "Users",
 089                column: "Name",
 090                unique: true);
 91
 092            migrationBuilder.CreateIndex(
 093                name: "IX_Role_Name",
 094                schema: "Elsa",
 095                table: "Roles",
 096                column: "Name",
 097                unique: true);
 98
 099            migrationBuilder.CreateIndex(
 0100                name: "IX_Application_ClientId",
 0101                schema: "Elsa",
 0102                table: "Applications",
 0103                column: "ClientId",
 0104                unique: true);
 105
 0106            migrationBuilder.CreateIndex(
 0107                name: "IX_Application_Name",
 0108                schema: "Elsa",
 0109                table: "Applications",
 0110                column: "Name",
 0111                unique: true);
 0112        }
 113    }
 114}

/home/runner/work/elsa-core/elsa-core/src/modules/Elsa.Persistence.EFCore.Sqlite/Migrations/Identity/20260823231406_PerTenantIdentityUniqueness.Designer.cs

#LineLine coverage
 1// <auto-generated />
 2using Elsa.Persistence.EFCore.Modules.Identity;
 3using Microsoft.EntityFrameworkCore;
 4using Microsoft.EntityFrameworkCore.Infrastructure;
 5using Microsoft.EntityFrameworkCore.Migrations;
 6using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
 7
 8#nullable disable
 9
 10namespace Elsa.Persistence.EFCore.Sqlite.Migrations.Identity
 11{
 12    [DbContext(typeof(IdentityElsaDbContext))]
 13    [Migration("20260823231406_PerTenantIdentityUniqueness")]
 14    partial class PerTenantIdentityUniqueness
 15    {
 16        /// <inheritdoc />
 17        protected override void BuildTargetModel(ModelBuilder modelBuilder)
 18        {
 19#pragma warning disable 612, 618
 020            modelBuilder
 021                .HasDefaultSchema("Elsa")
 022                .HasAnnotation("ProductVersion", "9.0.17");
 23
 024            modelBuilder.Entity("Elsa.Identity.Entities.Application", b =>
 025                {
 026                    b.Property<string>("Id")
 027                        .HasColumnType("TEXT");
 028
 029                    b.Property<string>("ClientId")
 030                        .IsRequired()
 031                        .HasColumnType("TEXT");
 032
 033                    b.Property<string>("HashedApiKey")
 034                        .IsRequired()
 035                        .HasColumnType("TEXT");
 036
 037                    b.Property<string>("HashedApiKeySalt")
 038                        .IsRequired()
 039                        .HasColumnType("TEXT");
 040
 041                    b.Property<string>("HashedClientSecret")
 042                        .IsRequired()
 043                        .HasColumnType("TEXT");
 044
 045                    b.Property<string>("HashedClientSecretSalt")
 046                        .IsRequired()
 047                        .HasColumnType("TEXT");
 048
 049                    b.Property<string>("Name")
 050                        .IsRequired()
 051                        .HasColumnType("TEXT");
 052
 053                    b.Property<string>("Roles")
 054                        .IsRequired()
 055                        .HasColumnType("TEXT")
 056                        .HasColumnName("Roles");
 057
 058                    b.Property<string>("TenantId")
 059                        .HasColumnType("TEXT");
 060
 061                    b.HasKey("Id");
 062
 063                    b.HasIndex("TenantId")
 064                        .HasDatabaseName("IX_Application_TenantId");
 065
 066                    b.HasIndex("TenantId", "ClientId")
 067                        .IsUnique()
 068                        .HasDatabaseName("IX_Application_TenantId_ClientId");
 069
 070                    b.HasIndex("TenantId", "Name")
 071                        .IsUnique()
 072                        .HasDatabaseName("IX_Application_TenantId_Name");
 073
 074                    b.ToTable("Applications", "Elsa");
 075                });
 76
 077            modelBuilder.Entity("Elsa.Identity.Entities.Role", b =>
 078                {
 079                    b.Property<string>("Id")
 080                        .HasColumnType("TEXT");
 081
 082                    b.Property<string>("Name")
 083                        .IsRequired()
 084                        .HasColumnType("TEXT");
 085
 086                    b.Property<string>("Permissions")
 087                        .IsRequired()
 088                        .HasColumnType("TEXT")
 089                        .HasColumnName("Permissions");
 090
 091                    b.Property<string>("TenantId")
 092                        .HasColumnType("TEXT");
 093
 094                    b.HasKey("Id");
 095
 096                    b.HasIndex("TenantId")
 097                        .HasDatabaseName("IX_Role_TenantId");
 098
 099                    b.HasIndex("TenantId", "Name")
 0100                        .IsUnique()
 0101                        .HasDatabaseName("IX_Role_TenantId_Name");
 0102
 0103                    b.ToTable("Roles", "Elsa");
 0104                });
 105
 0106            modelBuilder.Entity("Elsa.Identity.Entities.User", b =>
 0107                {
 0108                    b.Property<string>("Id")
 0109                        .HasColumnType("TEXT");
 0110
 0111                    b.Property<string>("HashedPassword")
 0112                        .HasColumnType("TEXT");
 0113
 0114                    b.Property<string>("HashedPasswordSalt")
 0115                        .HasColumnType("TEXT");
 0116
 0117                    b.Property<string>("Name")
 0118                        .IsRequired()
 0119                        .HasColumnType("TEXT");
 0120
 0121                    b.Property<string>("Roles")
 0122                        .IsRequired()
 0123                        .HasColumnType("TEXT")
 0124                        .HasColumnName("Roles");
 0125
 0126                    b.Property<string>("TenantId")
 0127                        .HasColumnType("TEXT");
 0128
 0129                    b.HasKey("Id");
 0130
 0131                    b.HasIndex("TenantId")
 0132                        .HasDatabaseName("IX_User_TenantId");
 0133
 0134                    b.HasIndex("TenantId", "Name")
 0135                        .IsUnique()
 0136                        .HasDatabaseName("IX_User_TenantId_Name");
 0137
 0138                    b.ToTable("Users", "Elsa");
 0139                });
 140#pragma warning restore 612, 618
 0141        }
 142    }
 143}