< Summary

Line coverage
96%
Covered lines: 186
Uncovered lines: 7
Coverable lines: 193
Total lines: 254
Line coverage: 96.3%
Branch coverage
50%
Covered branches: 1
Total branches: 2
Branch coverage: 50%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

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

File(s)

/home/runner/work/elsa-core/elsa-core/src/modules/Elsa.Persistence.EFCore.SqlServer/Migrations/Alterations/20231015122155_Initial.cs

#LineLine coverage
 1
 2using Microsoft.EntityFrameworkCore.Migrations;
 3
 4#nullable disable
 5
 6namespace Elsa.Persistence.EFCore.SqlServer.Migrations.Alterations
 7{
 8    /// <inheritdoc />
 9    public partial class Initial : Migration
 10    {
 11        private readonly IElsaDbContextSchema _schema;
 112        public Initial(IElsaDbContextSchema schema)
 13        {
 114            _schema = schema ?? throw new ArgumentNullException(nameof(schema));
 115        }
 16        /// <inheritdoc />
 17        protected override void Up(MigrationBuilder migrationBuilder)
 18        {
 119            migrationBuilder.EnsureSchema(
 120                name: _schema.Schema);
 21
 122            migrationBuilder.CreateTable(
 123                name: "AlterationJobs",
 124                schema: _schema.Schema,
 125                columns: table => new
 126                {
 127                    Id = table.Column<string>(type: "nvarchar(450)", nullable: false),
 128                    PlanId = table.Column<string>(type: "nvarchar(450)", nullable: false),
 129                    WorkflowInstanceId = table.Column<string>(type: "nvarchar(450)", nullable: false),
 130                    Status = table.Column<int>(type: "int", nullable: false),
 131                    CreatedAt = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: false),
 132                    StartedAt = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: true),
 133                    CompletedAt = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: true),
 134                    SerializedLog = table.Column<string>(type: "nvarchar(max)", nullable: true)
 135                },
 136                constraints: table =>
 137                {
 138                    table.PrimaryKey("PK_AlterationJobs", x => x.Id);
 239                });
 40
 141            migrationBuilder.CreateTable(
 142                name: "AlterationPlans",
 143                schema: _schema.Schema,
 144                columns: table => new
 145                {
 146                    Id = table.Column<string>(type: "nvarchar(450)", nullable: false),
 147                    Status = table.Column<int>(type: "int", nullable: false),
 148                    CreatedAt = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: false),
 149                    StartedAt = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: true),
 150                    CompletedAt = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: true),
 151                    SerializedAlterations = table.Column<string>(type: "nvarchar(max)", nullable: true),
 152                    SerializedWorkflowInstanceIds = table.Column<string>(type: "nvarchar(max)", nullable: true)
 153                },
 154                constraints: table =>
 155                {
 156                    table.PrimaryKey("PK_AlterationPlans", x => x.Id);
 257                });
 58
 159            migrationBuilder.CreateIndex(
 160                name: "IX_AlterationJob_CompletedAt",
 161                schema: _schema.Schema,
 162                table: "AlterationJobs",
 163                column: "CompletedAt");
 64
 165            migrationBuilder.CreateIndex(
 166                name: "IX_AlterationJob_CreatedAt",
 167                schema: _schema.Schema,
 168                table: "AlterationJobs",
 169                column: "CreatedAt");
 70
 171            migrationBuilder.CreateIndex(
 172                name: "IX_AlterationJob_PlanId",
 173                schema: _schema.Schema,
 174                table: "AlterationJobs",
 175                column: "PlanId");
 76
 177            migrationBuilder.CreateIndex(
 178                name: "IX_AlterationJob_StartedAt",
 179                schema: _schema.Schema,
 180                table: "AlterationJobs",
 181                column: "StartedAt");
 82
 183            migrationBuilder.CreateIndex(
 184                name: "IX_AlterationJob_Status",
 185                schema: _schema.Schema,
 186                table: "AlterationJobs",
 187                column: "Status");
 88
 189            migrationBuilder.CreateIndex(
 190                name: "IX_AlterationJob_WorkflowInstanceId",
 191                schema: _schema.Schema,
 192                table: "AlterationJobs",
 193                column: "WorkflowInstanceId");
 94
 195            migrationBuilder.CreateIndex(
 196                name: "IX_AlterationPlan_CompletedAt",
 197                schema: _schema.Schema,
 198                table: "AlterationPlans",
 199                column: "CompletedAt");
 100
 1101            migrationBuilder.CreateIndex(
 1102                name: "IX_AlterationPlan_CreatedAt",
 1103                schema: _schema.Schema,
 1104                table: "AlterationPlans",
 1105                column: "CreatedAt");
 106
 1107            migrationBuilder.CreateIndex(
 1108                name: "IX_AlterationPlan_StartedAt",
 1109                schema: _schema.Schema,
 1110                table: "AlterationPlans",
 1111                column: "StartedAt");
 112
 1113            migrationBuilder.CreateIndex(
 1114                name: "IX_AlterationPlan_Status",
 1115                schema: _schema.Schema,
 1116                table: "AlterationPlans",
 1117                column: "Status");
 1118        }
 119
 120        /// <inheritdoc />
 121        protected override void Down(MigrationBuilder migrationBuilder)
 122        {
 0123            migrationBuilder.DropTable(
 0124                name: "AlterationJobs",
 0125                schema: _schema.Schema);
 126
 0127            migrationBuilder.DropTable(
 0128                name: "AlterationPlans",
 0129                schema: _schema.Schema);
 0130        }
 131    }
 132}

/home/runner/work/elsa-core/elsa-core/src/modules/Elsa.Persistence.EFCore.SqlServer/Migrations/Alterations/20231015122155_Initial.Designer.cs

#LineLine coverage
 1// <auto-generated />
 2using System;
 3using Elsa.Persistence.EFCore.Modules.Alterations;
 4using Microsoft.EntityFrameworkCore;
 5using Microsoft.EntityFrameworkCore.Infrastructure;
 6using Microsoft.EntityFrameworkCore.Metadata;
 7using Microsoft.EntityFrameworkCore.Migrations;
 8using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
 9
 10#nullable disable
 11
 12namespace Elsa.Persistence.EFCore.SqlServer.Migrations.Alterations
 13{
 14    [DbContext(typeof(AlterationsElsaDbContext))]
 15    [Migration("20231015122155_Initial")]
 16    partial class Initial
 17    {
 18        /// <inheritdoc />
 19        protected override void BuildTargetModel(ModelBuilder modelBuilder)
 20        {
 21#pragma warning disable 612, 618
 122            modelBuilder
 123                .HasDefaultSchema("Elsa")
 124                .HasAnnotation("ProductVersion", "7.0.11")
 125                .HasAnnotation("Relational:MaxIdentifierLength", 128);
 26
 127            SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder);
 28
 129            modelBuilder.Entity("Elsa.Alterations.Core.Entities.AlterationJob", b =>
 130                {
 131                    b.Property<string>("Id")
 132                        .HasColumnType("nvarchar(450)");
 133
 134                    b.Property<DateTimeOffset?>("CompletedAt")
 135                        .HasColumnType("datetimeoffset");
 136
 137                    b.Property<DateTimeOffset>("CreatedAt")
 138                        .HasColumnType("datetimeoffset");
 139
 140                    b.Property<string>("PlanId")
 141                        .IsRequired()
 142                        .HasColumnType("nvarchar(450)");
 143
 144                    b.Property<string>("SerializedLog")
 145                        .HasColumnType("nvarchar(max)");
 146
 147                    b.Property<DateTimeOffset?>("StartedAt")
 148                        .HasColumnType("datetimeoffset");
 149
 150                    b.Property<int>("Status")
 151                        .HasColumnType("int");
 152
 153                    b.Property<string>("WorkflowInstanceId")
 154                        .IsRequired()
 155                        .HasColumnType("nvarchar(450)");
 156
 157                    b.HasKey("Id");
 158
 159                    b.HasIndex("CompletedAt")
 160                        .HasDatabaseName("IX_AlterationJob_CompletedAt");
 161
 162                    b.HasIndex("CreatedAt")
 163                        .HasDatabaseName("IX_AlterationJob_CreatedAt");
 164
 165                    b.HasIndex("PlanId")
 166                        .HasDatabaseName("IX_AlterationJob_PlanId");
 167
 168                    b.HasIndex("StartedAt")
 169                        .HasDatabaseName("IX_AlterationJob_StartedAt");
 170
 171                    b.HasIndex("Status")
 172                        .HasDatabaseName("IX_AlterationJob_Status");
 173
 174                    b.HasIndex("WorkflowInstanceId")
 175                        .HasDatabaseName("IX_AlterationJob_WorkflowInstanceId");
 176
 177                    b.ToTable("AlterationJobs", "Elsa");
 278                });
 79
 180            modelBuilder.Entity("Elsa.Alterations.Core.Entities.AlterationPlan", b =>
 181                {
 182                    b.Property<string>("Id")
 183                        .HasColumnType("nvarchar(450)");
 184
 185                    b.Property<DateTimeOffset?>("CompletedAt")
 186                        .HasColumnType("datetimeoffset");
 187
 188                    b.Property<DateTimeOffset>("CreatedAt")
 189                        .HasColumnType("datetimeoffset");
 190
 191                    b.Property<string>("SerializedAlterations")
 192                        .HasColumnType("nvarchar(max)");
 193
 194                    b.Property<string>("SerializedWorkflowInstanceIds")
 195                        .HasColumnType("nvarchar(max)");
 196
 197                    b.Property<DateTimeOffset?>("StartedAt")
 198                        .HasColumnType("datetimeoffset");
 199
 1100                    b.Property<int>("Status")
 1101                        .HasColumnType("int");
 1102
 1103                    b.HasKey("Id");
 1104
 1105                    b.HasIndex("CompletedAt")
 1106                        .HasDatabaseName("IX_AlterationPlan_CompletedAt");
 1107
 1108                    b.HasIndex("CreatedAt")
 1109                        .HasDatabaseName("IX_AlterationPlan_CreatedAt");
 1110
 1111                    b.HasIndex("StartedAt")
 1112                        .HasDatabaseName("IX_AlterationPlan_StartedAt");
 1113
 1114                    b.HasIndex("Status")
 1115                        .HasDatabaseName("IX_AlterationPlan_Status");
 1116
 1117                    b.ToTable("AlterationPlans", "Elsa");
 2118                });
 119#pragma warning restore 612, 618
 1120        }
 121    }
 122}