< Summary

Information
Class: ArturRios.Util.Test.Attributes.TestTypeTraitDiscoverer
Assembly: ArturRios.Util.Test
File(s): D:\Repositories\dotnet-test-util\src\Attributes\TestTypeTraitDiscoverer.cs
Line coverage
100%
Covered lines: 4
Uncovered lines: 0
Coverable lines: 4
Total lines: 22
Line coverage: 100%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage
100%
Covered methods: 1
Fully covered methods: 0
Total methods: 1
Method coverage: 100%
Full method coverage: 0%

Metrics

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

File(s)

D:\Repositories\dotnet-test-util\src\Attributes\TestTypeTraitDiscoverer.cs

#LineLine coverage
 1using Xunit.Abstractions;
 2using Xunit.Sdk;
 3
 4namespace ArturRios.Util.Test.Attributes;
 5
 6/// <summary>
 7/// Trait discoverer that reads the <see cref="CustomFactAttribute.TestType"/> carried by a custom test attribute
 8/// and exposes it as the <c>Category</c> trait, enabling filters such as <c>dotnet test --filter "Category=Unit"</c>.
 9/// </summary>
 10public class TestTypeTraitDiscoverer : ITraitDiscoverer
 11{
 12    /// <summary>The trait key under which the test type is published.</summary>
 13    public const string TraitName = "Category";
 14
 15    /// <inheritdoc />
 16    public IEnumerable<KeyValuePair<string, string>> GetTraits(IAttributeInfo traitAttribute)
 417    {
 418        var testType = traitAttribute.GetNamedArgument<TestType>(nameof(CustomFactAttribute.TestType));
 19
 420        yield return new KeyValuePair<string, string>(TraitName, testType.ToString());
 421    }
 22}

Methods/Properties

GetTraits()