< Summary

Information
Class: EHonda.KicktippAi.Core.PersistedMatchOutcome
Assembly: EHonda.KicktippAi.Core
File(s): /home/runner/work/KicktippAi/KicktippAi/src/Core/MatchOutcomes.cs
Line coverage
100%
Covered lines: 14
Uncovered lines: 0
Coverable lines: 14
Total lines: 50
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_HasOutcome()100%11100%

File(s)

/home/runner/work/KicktippAi/KicktippAi/src/Core/MatchOutcomes.cs

#LineLine coverage
 1using NodaTime;
 2
 3namespace EHonda.KicktippAi.Core;
 4
 5public enum MatchOutcomeAvailability
 6{
 7    Pending,
 8    Completed
 9}
 10
 11public enum MatchOutcomeWriteDisposition
 12{
 13    Created,
 14    Updated,
 15    Unchanged
 16}
 17
 18public record CollectedMatchOutcome(
 19    string HomeTeam,
 20    string AwayTeam,
 21    ZonedDateTime StartsAt,
 22    int Matchday,
 23    int? HomeGoals,
 24    int? AwayGoals,
 25    MatchOutcomeAvailability Availability,
 26    string? TippSpielId = null)
 27{
 28    public bool HasOutcome => Availability == MatchOutcomeAvailability.Completed;
 29}
 30
 131public record PersistedMatchOutcome(
 132    string CommunityContext,
 133    string Competition,
 134    string HomeTeam,
 135    string AwayTeam,
 136    ZonedDateTime StartsAt,
 137    int Matchday,
 138    int? HomeGoals,
 139    int? AwayGoals,
 140    MatchOutcomeAvailability Availability,
 141    string? TippSpielId,
 142    DateTimeOffset CreatedAt,
 143    DateTimeOffset UpdatedAt)
 44{
 145    public bool HasOutcome => Availability == MatchOutcomeAvailability.Completed;
 46}
 47
 48public record MatchOutcomeUpsertResult(
 49    MatchOutcomeWriteDisposition Disposition,
 50    PersistedMatchOutcome Outcome);