< Summary

Class:Itinero.Network.TurnCosts.RoutingNetworkEdgeEnumeratorExtensions
Assembly:Itinero
File(s):/home/runner/work/routing2/routing2/src/Itinero/Network/TurnCosts/RoutingNetworkEdgeEnumeratorExtensions.cs
Covered lines:11
Uncovered lines:0
Coverable lines:11
Total lines:28
Line coverage:100% (11 of 11)
Covered branches:4
Total branches:4
Branch coverage:100% (4 of 4)
Tag:224_14471318300

Metrics

MethodBranch coverage Cyclomatic complexity Line coverage
GetTurnCostTo(...)100%4100%

File(s)

/home/runner/work/routing2/routing2/src/Itinero/Network/TurnCosts/RoutingNetworkEdgeEnumeratorExtensions.cs

#LineLine coverage
 1using System;
 2using System.Collections.Generic;
 3using System.Linq;
 4using Itinero.Network.Enumerators.Edges;
 5
 6namespace Itinero.Network.TurnCosts;
 7
 8public static class RoutingNetworkEdgeEnumeratorExtensions
 9{
 10    internal static IEnumerable<(uint turnCostType, IEnumerable<(string key, string value)> attributes, uint cost, IEnum
 11        this RoutingNetworkEdgeEnumerator enumerator,
 12        IEnumerable<(EdgeId edge, byte? turn)> previousEdges)
 4113    {
 4114        using var previousEdgesEnumerator = previousEdges.GetEnumerator();
 4115        if (!previousEdgesEnumerator.MoveNext())
 2516        {
 2517            return ArraySegment<(uint turnCostType, IEnumerable<(string key, string value)> attributes, uint cost, IEnum
 18        }
 19
 1620        var fromOrder = previousEdgesEnumerator.Current.turn;
 1621        if (fromOrder == null)
 1122        {
 1123            return ArraySegment<(uint turnCostType, IEnumerable<(string key, string value)> attributes, uint cost, IEnum
 24        }
 25
 526        return enumerator.GetTurnCostToTail(fromOrder.Value);
 4127    }
 28}

Methods/Properties

GetTurnCostTo(...)