< Summary

Information
Class: Fluorite.Strainer.Services.Sorting.CustomSortMethodBuilderWithName<T>
Assembly: Fluorite.Strainer
File(s): /builds/fluorite/strainer/src/Strainer/Services/Sorting/CustomSortMethodBuilderWithName.cs
Line coverage
100%
Covered lines: 8
Uncovered lines: 0
Coverable lines: 8
Total lines: 29
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_Name()100%11100%
HasFunction(...)100%11100%
HasFunction(...)100%11100%

File(s)

/builds/fluorite/strainer/src/Strainer/Services/Sorting/CustomSortMethodBuilderWithName.cs

#LineLine coverage
 1using Fluorite.Strainer.Models.Sorting.Terms;
 2using System.Linq.Expressions;
 3
 4namespace Fluorite.Strainer.Services.Sorting;
 5
 6public class CustomSortMethodBuilderWithName<TEntity> : CustomSortMethodBuilder<TEntity>, ICustomSortMethodBuilderWithNa
 7{
 118    public CustomSortMethodBuilderWithName(string name)
 9    {
 1110        Name = Guard.Against.NullOrWhiteSpace(name);
 1111    }
 12
 1113    protected string Name { get; }
 14
 15    public ICustomSortMethodBuilderWithExpression<TEntity> HasFunction(Expression<Func<TEntity, object>> expression)
 16    {
 517        Guard.Against.Null(expression);
 18
 519        return new CustomSortMethodBuilderWithExpression<TEntity>(Name, expression);
 20    }
 21
 22    public ICustomSortMethodBuilderWithExpression<TEntity> HasFunction(
 23        Func<ISortTerm, Expression<Func<TEntity, object>>> sortTermExpression)
 24    {
 125        Guard.Against.Null(sortTermExpression);
 26
 127        return new CustomSortMethodBuilderWithExpression<TEntity>(Name, sortTermExpression);
 28    }
 29}