< Summary

Information
Class: NGql.Core.Extensions.ObjectMetadataExtensions
Assembly: NGql.Core
File(s): /home/runner/work/NGql/NGql/src/Core/Extensions/ObjectMetadataExtensions.cs
Line coverage
100%
Covered lines: 7
Uncovered lines: 0
Coverable lines: 7
Total lines: 27
Line coverage: 100%
Branch coverage
100%
Covered branches: 4
Total branches: 4
Branch coverage: 100%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
GetAlias(...)100%44100%

File(s)

/home/runner/work/NGql/NGql/src/Core/Extensions/ObjectMetadataExtensions.cs

#LineLine coverage
 1using System.Reflection;
 2using System.Runtime.Serialization;
 3using System.Text.Json.Serialization;
 4
 5namespace NGql.Core.Extensions;
 6
 7internal static class ObjectMetadataExtensions
 8{
 9    public static string? GetAlias(this PropertyInfo property)
 10    {
 11        // Check for DataMember attribute
 10512        var dataMemberAttribute = property.GetCustomAttribute<DataMemberAttribute>();
 10513        if (dataMemberAttribute != null)
 14        {
 2715            return dataMemberAttribute.Name;
 16        }
 17
 18        // Check for JsonProperty attribute
 7819        var jsonPropertyAttribute = property.GetCustomAttribute<JsonPropertyNameAttribute>();
 7820        if (jsonPropertyAttribute != null)
 21        {
 5422            return jsonPropertyAttribute.Name;
 23        }
 24
 2425        return null;
 26    }
 27}