< Summary - Code Coverage

Information
Class: Plainquire.Filter.Mvc.ModelBinders.EntityFilterModelBinderProvider
Assembly: Plainquire.Filter.Mvc
File(s): /home/runner/work/plainquire/plainquire/Plainquire.Filter/Plainquire.Filter.Mvc/ModelBinders/EntityFilterModelBinderProvider.cs
Tag: 64_13932151703
Line coverage
80%
Covered lines: 4
Uncovered lines: 1
Coverable lines: 5
Total lines: 22
Line coverage: 80%
Branch coverage
50%
Covered branches: 2
Total branches: 4
Branch coverage: 50%
Method coverage
100%
Covered methods: 1
Total methods: 1
Method coverage: 100%

Metrics

MethodBranch coverage Cyclomatic complexity NPath complexity Sequence coverage
GetBinder(...)50%4480%

File(s)

/home/runner/work/plainquire/plainquire/Plainquire.Filter/Plainquire.Filter.Mvc/ModelBinders/EntityFilterModelBinderProvider.cs

#LineLine coverage
 1using Microsoft.AspNetCore.Mvc.ModelBinding;
 2using Microsoft.AspNetCore.Mvc.ModelBinding.Binders;
 3using System;
 4
 5namespace Plainquire.Filter.Mvc.ModelBinders;
 6
 7/// <summary>
 8/// Model binding provider for <see cref="EntityFilterModelBinder"/>
 9/// </summary>
 10public class EntityFilterModelBinderProvider : IModelBinderProvider
 11{
 12    /// <inheritdoc />
 13    public IModelBinder? GetBinder(ModelBinderProviderContext context)
 14    {
 415        if (context == null)
 016            throw new ArgumentNullException(nameof(context));
 17
 418        return context.Metadata.ModelType.IsGenericEntityFilter()
 419            ? new BinderTypeModelBinder(typeof(EntityFilterModelBinder))
 420            : null;
 21    }
 22}