< Summary - Jellyfin

Information
Class: Jellyfin.Database.Providers.Sqlite.Migrations.SqliteDesignTimeJellyfinDbFactory
Assembly: Jellyfin.Database.Providers.Sqlite
File(s): /srv/git/jellyfin/src/Jellyfin.Database/Jellyfin.Database.Providers.Sqlite/Migrations/SqliteDesignTimeJellyfinDbFactory.cs
Line coverage
100%
Covered lines: 7
Uncovered lines: 0
Coverable lines: 7
Total lines: 27
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

Coverage history

Coverage history 0 25 50 75 100

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
CreateDbContext(...)100%11100%

File(s)

/srv/git/jellyfin/src/Jellyfin.Database/Jellyfin.Database.Providers.Sqlite/Migrations/SqliteDesignTimeJellyfinDbFactory.cs

#LineLine coverage
 1using Jellyfin.Database.Implementations;
 2using Jellyfin.Database.Implementations.Locking;
 3using Microsoft.EntityFrameworkCore;
 4using Microsoft.EntityFrameworkCore.Design;
 5using Microsoft.Extensions.Logging.Abstractions;
 6
 7namespace Jellyfin.Database.Providers.Sqlite.Migrations
 8{
 9    /// <summary>
 10    /// The design time factory for <see cref="JellyfinDbContext"/>.
 11    /// This is only used for the creation of migrations and not during runtime.
 12    /// </summary>
 13    internal sealed class SqliteDesignTimeJellyfinDbFactory : IDesignTimeDbContextFactory<JellyfinDbContext>
 14    {
 15        public JellyfinDbContext CreateDbContext(string[] args)
 16        {
 117            var optionsBuilder = new DbContextOptionsBuilder<JellyfinDbContext>();
 118            optionsBuilder.UseSqlite("Data Source=jellyfin.db", f => f.MigrationsAssembly(GetType().Assembly));
 19
 120            return new JellyfinDbContext(
 121                optionsBuilder.Options,
 122                NullLogger<JellyfinDbContext>.Instance,
 123                new SqliteDatabaseProvider(null!, NullLogger<SqliteDatabaseProvider>.Instance),
 124                new NoLockBehavior(NullLogger<NoLockBehavior>.Instance));
 25        }
 26    }
 27}