< Summary

Information
Class: Infrastructure.Context.NorthwindContext
Assembly: Infrastructure
File(s): /home/runner/work/Northwind-Api/Northwind-Api/src/Infrastructure/Context/NorthwindContext.cs
Line coverage
100%
Covered lines: 222
Uncovered lines: 0
Coverable lines: 222
Total lines: 283
Line coverage: 100%
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
.ctor(...)100%11100%
get_categories()100%11100%
get_customers()100%11100%
get_customer_demographics()100%11100%
get_employees()100%11100%
get_orders()100%11100%
get_order_details()100%11100%
get_products()100%11100%
get_regions()100%11100%
get_shippers()100%11100%
get_suppliers()100%11100%
get_territories()100%11100%
get_us_states()100%11100%
OnModelCreating(...)100%11100%

File(s)

/home/runner/work/Northwind-Api/Northwind-Api/src/Infrastructure/Context/NorthwindContext.cs

#LineLine coverage
 1using Infrastructure.Entity;
 2using Microsoft.EntityFrameworkCore;
 3using Microsoft.Extensions.Logging;
 4
 5namespace Infrastructure.Context;
 6public partial class NorthwindContext : DbContext {
 7  private readonly ILogger<NorthwindContext> _logger;
 8  public NorthwindContext(ILogger<NorthwindContext> logger, DbContextOptions<NorthwindContext> options)
 89      : base(options) {
 410    _logger = logger;
 411  }
 12
 13#pragma warning disable IDE1006 // Naming Styles
 414  public virtual DbSet<category> categories { get; set; }
 15#pragma warning restore IDE1006 // Naming Styles
 16
 17#pragma warning disable IDE1006 // Naming Styles
 618  public virtual DbSet<customer> customers { get; set; }
 19#pragma warning restore IDE1006 // Naming Styles
 20
 21#pragma warning disable IDE1006 // Naming Styles
 422  public virtual DbSet<customer_demographic> customer_demographics { get; set; }
 23#pragma warning restore IDE1006 // Naming Styles
 24
 25#pragma warning disable IDE1006 // Naming Styles
 626  public virtual DbSet<employee> employees { get; set; }
 27#pragma warning restore IDE1006 // Naming Styles
 28
 29#pragma warning disable IDE1006 // Naming Styles
 430  public virtual DbSet<order> orders { get; set; }
 31#pragma warning restore IDE1006 // Naming Styles
 32
 33#pragma warning disable IDE1006 // Naming Styles
 434  public virtual DbSet<order_detail> order_details { get; set; }
 35#pragma warning restore IDE1006 // Naming Styles
 36
 37#pragma warning disable IDE1006 // Naming Styles
 438  public virtual DbSet<product> products { get; set; }
 39#pragma warning restore IDE1006 // Naming Styles
 40
 41#pragma warning disable IDE1006 // Naming Styles
 442  public virtual DbSet<region> regions { get; set; }
 43#pragma warning restore IDE1006 // Naming Styles
 44
 45#pragma warning disable IDE1006 // Naming Styles
 446  public virtual DbSet<shipper> shippers { get; set; }
 47#pragma warning restore IDE1006 // Naming Styles
 48
 49#pragma warning disable IDE1006 // Naming Styles
 450  public virtual DbSet<supplier> suppliers { get; set; }
 51#pragma warning restore IDE1006 // Naming Styles
 52
 53#pragma warning disable IDE1006 // Naming Styles
 454  public virtual DbSet<territory> territories { get; set; }
 55#pragma warning restore IDE1006 // Naming Styles
 56
 57#pragma warning disable IDE1006 // Naming Styles
 458  public virtual DbSet<us_state> us_states { get; set; }
 59#pragma warning restore IDE1006 // Naming Styles
 60
 161  protected override void OnModelCreating(ModelBuilder modelBuilder) {
 262    modelBuilder.Entity<category>(entity => {
 163      entity.HasKey(e => e.category_id).HasName("pk_categories");
 164
 165      entity.ToTable("categories", "northwind");
 166
 167      entity.Property(e => e.category_id).ValueGeneratedNever();
 168      entity.Property(e => e.category_name).HasMaxLength(15);
 269    });
 70
 271    modelBuilder.Entity<customer>(entity => {
 172      entity.HasKey(e => e.customer_id).HasName("pk_customers");
 173
 174      entity.ToTable("customers", "northwind");
 175
 176      entity.Property(e => e.customer_id).HasMaxLength(5);
 177      entity.Property(e => e.address).HasMaxLength(60);
 178      entity.Property(e => e.city).HasMaxLength(15);
 179      entity.Property(e => e.company_name).HasMaxLength(40);
 180      entity.Property(e => e.contact_name).HasMaxLength(30);
 181      entity.Property(e => e.contact_title).HasMaxLength(30);
 182      entity.Property(e => e.country).HasMaxLength(15);
 183      entity.Property(e => e.fax).HasMaxLength(24);
 184      entity.Property(e => e.phone).HasMaxLength(24);
 185      entity.Property(e => e.postal_code).HasMaxLength(10);
 186      entity.Property(e => e.region).HasMaxLength(15);
 187
 188      entity.HasMany(d => d.customer_types).WithMany(p => p.customers)
 189          .UsingEntity<Dictionary<string, object>>(
 190              "customer_customer_demo",
 191              r => r.HasOne<customer_demographic>().WithMany()
 192                  .HasForeignKey("customer_type_id")
 193                  .OnDelete(DeleteBehavior.ClientSetNull)
 194                  .HasConstraintName("fk_customer_customer_demo_customer_demographics"),
 195              l => l.HasOne<customer>().WithMany()
 196                  .HasForeignKey("customer_id")
 197                  .OnDelete(DeleteBehavior.ClientSetNull)
 198                  .HasConstraintName("fk_customer_customer_demo_customers"),
 199              j => {
 1100                j.HasKey("customer_id", "customer_type_id").HasName("pk_customer_customer_demo");
 1101                j.ToTable("customer_customer_demo", "northwind");
 1102                j.IndexerProperty<string>("customer_id").HasMaxLength(5);
 1103                j.IndexerProperty<string>("customer_type_id").HasMaxLength(5);
 2104              });
 2105    });
 106
 2107    modelBuilder.Entity<customer_demographic>(entity => {
 1108      entity.HasKey(e => e.customer_type_id).HasName("pk_customer_demographics");
 1109
 1110      entity.ToTable("customer_demographics", "northwind");
 1111
 1112      entity.Property(e => e.customer_type_id).HasMaxLength(5);
 2113    });
 114
 2115    modelBuilder.Entity<employee>(entity => {
 1116      entity.HasKey(e => e.employee_id).HasName("pk_employees");
 1117
 1118      entity.ToTable("employees", "northwind");
 1119
 1120      entity.Property(e => e.employee_id).ValueGeneratedNever();
 1121      entity.Property(e => e.address).HasMaxLength(60);
 1122      entity.Property(e => e.city).HasMaxLength(15);
 1123      entity.Property(e => e.country).HasMaxLength(15);
 1124      entity.Property(e => e.extension).HasMaxLength(4);
 1125      entity.Property(e => e.first_name).HasMaxLength(10);
 1126      entity.Property(e => e.home_phone).HasMaxLength(24);
 1127      entity.Property(e => e.last_name).HasMaxLength(20);
 1128      entity.Property(e => e.photo_path).HasMaxLength(255);
 1129      entity.Property(e => e.postal_code).HasMaxLength(10);
 1130      entity.Property(e => e.region).HasMaxLength(15);
 1131      entity.Property(e => e.title).HasMaxLength(30);
 1132      entity.Property(e => e.title_of_courtesy).HasMaxLength(25);
 1133
 1134      entity.HasOne(d => d.reports_toNavigation).WithMany(p => p.Inversereports_toNavigation)
 1135          .HasForeignKey(d => d.reports_to)
 1136          .HasConstraintName("fk_employees_employees");
 1137
 1138      entity.HasMany(d => d.territories).WithMany(p => p.employees)
 1139          .UsingEntity<Dictionary<string, object>>(
 1140              "employee_territory",
 1141              r => r.HasOne<territory>().WithMany()
 1142                  .HasForeignKey("territory_id")
 1143                  .OnDelete(DeleteBehavior.ClientSetNull)
 1144                  .HasConstraintName("fk_employee_territories_territories"),
 1145              l => l.HasOne<employee>().WithMany()
 1146                  .HasForeignKey("employee_id")
 1147                  .OnDelete(DeleteBehavior.ClientSetNull)
 1148                  .HasConstraintName("fk_employee_territories_employees"),
 1149              j => {
 1150                j.HasKey("employee_id", "territory_id").HasName("pk_employee_territories");
 1151                j.ToTable("employee_territories", "northwind");
 1152                j.IndexerProperty<string>("territory_id").HasMaxLength(20);
 2153              });
 2154    });
 155
 2156    modelBuilder.Entity<order>(entity => {
 1157      entity.HasKey(e => e.order_id).HasName("pk_orders");
 1158
 1159      entity.ToTable("orders", "northwind");
 1160
 1161      entity.Property(e => e.order_id).ValueGeneratedNever();
 1162      entity.Property(e => e.customer_id).HasMaxLength(5);
 1163      entity.Property(e => e.ship_address).HasMaxLength(60);
 1164      entity.Property(e => e.ship_city).HasMaxLength(15);
 1165      entity.Property(e => e.ship_country).HasMaxLength(15);
 1166      entity.Property(e => e.ship_name).HasMaxLength(40);
 1167      entity.Property(e => e.ship_postal_code).HasMaxLength(10);
 1168      entity.Property(e => e.ship_region).HasMaxLength(15);
 1169
 1170      entity.HasOne(d => d.customer).WithMany(p => p.orders)
 1171          .HasForeignKey(d => d.customer_id)
 1172          .HasConstraintName("fk_orders_customers");
 1173
 1174      entity.HasOne(d => d.employee).WithMany(p => p.orders)
 1175          .HasForeignKey(d => d.employee_id)
 1176          .HasConstraintName("fk_orders_employees");
 1177
 1178      entity.HasOne(d => d.ship_viaNavigation).WithMany(p => p.orders)
 1179          .HasForeignKey(d => d.ship_via)
 1180          .HasConstraintName("fk_orders_shippers");
 2181    });
 182
 2183    modelBuilder.Entity<order_detail>(entity => {
 1184      entity.HasKey(e => new { e.order_id, e.product_id }).HasName("pk_order_details");
 1185
 1186      entity.ToTable("order_details", "northwind");
 1187
 1188      entity.HasOne(d => d.order).WithMany(p => p.order_details)
 1189          .HasForeignKey(d => d.order_id)
 1190          .OnDelete(DeleteBehavior.ClientSetNull)
 1191          .HasConstraintName("fk_order_details_orders");
 1192
 1193      entity.HasOne(d => d.product).WithMany(p => p.order_details)
 1194          .HasForeignKey(d => d.product_id)
 1195          .OnDelete(DeleteBehavior.ClientSetNull)
 1196          .HasConstraintName("fk_order_details_products");
 2197    });
 198
 2199    modelBuilder.Entity<product>(entity => {
 1200      entity.HasKey(e => e.product_id).HasName("pk_products");
 1201
 1202      entity.ToTable("products", "northwind");
 1203
 1204      entity.Property(e => e.product_id).ValueGeneratedNever();
 1205      entity.Property(e => e.product_name).HasMaxLength(40);
 1206      entity.Property(e => e.quantity_per_unit).HasMaxLength(20);
 1207
 1208      entity.HasOne(d => d.category).WithMany(p => p.products)
 1209          .HasForeignKey(d => d.category_id)
 1210          .HasConstraintName("fk_products_categories");
 1211
 1212      entity.HasOne(d => d.supplier).WithMany(p => p.products)
 1213          .HasForeignKey(d => d.supplier_id)
 1214          .HasConstraintName("fk_products_suppliers");
 2215    });
 216
 2217    modelBuilder.Entity<region>(entity => {
 1218      entity.HasKey(e => e.region_id).HasName("pk_region");
 1219
 1220      entity.ToTable("region", "northwind");
 1221
 1222      entity.Property(e => e.region_id).ValueGeneratedNever();
 1223      entity.Property(e => e.region_description).HasMaxLength(60);
 2224    });
 225
 2226    modelBuilder.Entity<shipper>(entity => {
 1227      entity.HasKey(e => e.shipper_id).HasName("pk_shippers");
 1228
 1229      entity.ToTable("shippers", "northwind");
 1230
 1231      entity.Property(e => e.shipper_id).ValueGeneratedNever();
 1232      entity.Property(e => e.company_name).HasMaxLength(40);
 1233      entity.Property(e => e.phone).HasMaxLength(24);
 2234    });
 235
 2236    modelBuilder.Entity<supplier>(entity => {
 1237      entity.HasKey(e => e.supplier_id).HasName("pk_suppliers");
 1238
 1239      entity.ToTable("suppliers", "northwind");
 1240
 1241      entity.Property(e => e.supplier_id).ValueGeneratedNever();
 1242      entity.Property(e => e.address).HasMaxLength(60);
 1243      entity.Property(e => e.city).HasMaxLength(15);
 1244      entity.Property(e => e.company_name).HasMaxLength(40);
 1245      entity.Property(e => e.contact_name).HasMaxLength(30);
 1246      entity.Property(e => e.contact_title).HasMaxLength(30);
 1247      entity.Property(e => e.country).HasMaxLength(15);
 1248      entity.Property(e => e.fax).HasMaxLength(24);
 1249      entity.Property(e => e.phone).HasMaxLength(24);
 1250      entity.Property(e => e.postal_code).HasMaxLength(10);
 1251      entity.Property(e => e.region).HasMaxLength(15);
 2252    });
 253
 2254    modelBuilder.Entity<territory>(entity => {
 1255      entity.HasKey(e => e.territory_id).HasName("pk_territories");
 1256
 1257      entity.ToTable("territories", "northwind");
 1258
 1259      entity.Property(e => e.territory_id).HasMaxLength(20);
 1260      entity.Property(e => e.territory_description).HasMaxLength(60);
 1261
 1262      entity.HasOne(d => d.region).WithMany(p => p.territories)
 1263          .HasForeignKey(d => d.region_id)
 1264          .OnDelete(DeleteBehavior.ClientSetNull)
 1265          .HasConstraintName("fk_territories_region");
 2266    });
 267
 2268    modelBuilder.Entity<us_state>(entity => {
 1269      entity.HasKey(e => e.state_id).HasName("pk_usstates");
 1270
 1271      entity.ToTable("us_states", "northwind");
 1272
 1273      entity.Property(e => e.state_id).ValueGeneratedNever();
 1274      entity.Property(e => e.state_abbr).HasMaxLength(2);
 1275      entity.Property(e => e.state_name).HasMaxLength(100);
 1276      entity.Property(e => e.state_region).HasMaxLength(50);
 2277    });
 278
 279    OnModelCreatingPartial(modelBuilder);
 1280  }
 281
 282  partial void OnModelCreatingPartial(ModelBuilder modelBuilder);
 283}