< Summary

Information
Class: Orchestrator.Commands.Observability.PrepareCommunityToDate.PrepareCommunityToDateSettings
Assembly: Orchestrator
File(s): /home/runner/work/KicktippAi/KicktippAi/src/Orchestrator/Commands/Observability/PrepareCommunityToDate/PrepareCommunityToDateSettings.cs
Line coverage
66%
Covered lines: 4
Uncovered lines: 2
Coverable lines: 6
Total lines: 47
Line coverage: 66.6%
Branch coverage
60%
Covered branches: 6
Total branches: 10
Branch coverage: 60%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
.ctor()100%11100%
Validate()60%161060%

File(s)

/home/runner/work/KicktippAi/KicktippAi/src/Orchestrator/Commands/Observability/PrepareCommunityToDate/PrepareCommunityToDateSettings.cs

#LineLine coverage
 1using System.ComponentModel;
 2using Spectre.Console;
 3using Spectre.Console.Cli;
 4
 5namespace Orchestrator.Commands.Observability.PrepareCommunityToDate;
 6
 7public sealed class PrepareCommunityToDateSettings : CommandSettings
 8{
 9    [CommandOption("--community-context")]
 10    [Description("Community context used to fetch tippuebersicht snapshots and build the prepared dataset")]
 111    public string CommunityContext { get; set; } = string.Empty;
 12
 13    [CommandOption("--cutoff-matchday")]
 14    [Description("Optional cutoff matchday. Defaults to the currently displayed tippuebersicht matchday.")]
 15    public int? CutoffMatchday { get; set; }
 16
 17    [CommandOption("--source-pool-key")]
 18    [Description("Optional source pool identifier used in dataset names and output paths. Defaults to through-md<cutoff>
 19    public string? SourcePoolKey { get; set; }
 20
 21    [CommandOption("--slice-key")]
 22    [Description("Optional slice key override. Defaults to community-to-date-md<cutoff>.")]
 23    public string? SliceKey { get; set; }
 24
 25    [CommandOption("--dataset-name")]
 26    [Description("Optional hosted dataset name override for the prepared community-to-date dataset")]
 27    public string? DatasetName { get; set; }
 28
 29    [CommandOption("--output-directory")]
 30    [Description("Optional output directory override. Defaults to artifacts/langfuse-experiments/community-to-date/<comm
 31    public string? OutputDirectory { get; set; }
 32
 33    public override ValidationResult Validate()
 34    {
 135        if (string.IsNullOrWhiteSpace(CommunityContext))
 36        {
 037            return ValidationResult.Error("--community-context is required");
 38        }
 39
 140        if (CutoffMatchday is < 1 or > 35)
 41        {
 042            return ValidationResult.Error("--cutoff-matchday must be between 1 and 35 when provided");
 43        }
 44
 145        return ValidationResult.Success();
 46    }
 47}

Methods/Properties

.ctor()
Validate()