< Summary

Information
Class: Fluorite.Strainer.Models.Filtering.CustomFilterMethod<T>
Assembly: Fluorite.Strainer
File(s): /builds/fluorite/strainer/src/Strainer/Models/Filtering/CustomFilterMethod{T}.cs
Line coverage
100%
Covered lines: 8
Uncovered lines: 0
Coverable lines: 8
Total lines: 53
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%
.ctor(...)100%11100%
get_Expression()100%11100%
get_FilterTermExpression()100%11100%

File(s)

/builds/fluorite/strainer/src/Strainer/Models/Filtering/CustomFilterMethod{T}.cs

#LineLine coverage
 1using Fluorite.Strainer.Models.Filtering.Terms;
 2using System.Linq.Expressions;
 3
 4namespace Fluorite.Strainer.Models.Filtering;
 5
 6/// <summary>
 7/// Represents custom filter method.
 8/// </summary>
 9/// <typeparam name="T">
 10/// The type of entity processed by the custom method.
 11/// </typeparam>
 12public class CustomFilterMethod<T> : CustomFilterMethod, ICustomFilterMethod<T>
 13{
 14    /// <summary>
 15    /// Initializes a new instance of the <see cref="CustomFilterMethod{TEntity}"/>
 16    /// class.
 17    /// </summary>
 18    /// <param name="name">
 19    /// The custom method name.
 20    /// </param>
 21    /// <param name="expression">
 22    /// The expression used for custom filtering.
 23    /// </param>
 424    public CustomFilterMethod(string name, Expression<Func<T, bool>> expression) : base(name)
 25    {
 426        Expression = Guard.Against.Null(expression);
 427    }
 28
 29    /// <summary>
 30    /// Initializes a new instance of the <see cref="CustomFilterMethod{TEntity}"/>
 31    /// class.
 32    /// </summary>
 33    /// <param name="name">
 34    /// The custom method name.
 35    /// </param>
 36    /// <param name="filterTermExpression">
 37    /// The expression used for custom filtering.
 38    /// </param>
 139    public CustomFilterMethod(string name, Func<IFilterTerm, Expression<Func<T, bool>>> filterTermExpression) : base(nam
 40    {
 141        FilterTermExpression = Guard.Against.Null(filterTermExpression);
 142    }
 43
 44    /// <summary>
 45    /// Gets the expression used for custom filtering.
 46    /// </summary>
 547    public Expression<Func<T, bool>>? Expression { get; }
 48
 49    /// <summary>
 50    /// Gets the func leading to expression used for custom filtering.
 51    /// </summary>
 452    public Func<IFilterTerm, Expression<Func<T, bool>>>? FilterTermExpression { get; }
 53}