< Summary

Information
Class: Orchestrator.Commands.Observability.Cost.CostSettings
Assembly: Orchestrator
File(s): /home/runner/work/KicktippAi/KicktippAi/src/Orchestrator/Commands/Observability/Cost/CostSettings.cs
Line coverage
0%
Covered lines: 0
Uncovered lines: 8
Coverable lines: 8
Total lines: 68
Line coverage: 0%
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
get_Matchdays()100%210%
set_Matchdays(...)100%210%
get_Bonus()100%210%
set_Bonus(...)100%210%
get_Models()100%210%
set_Models(...)100%210%
get_CommunityContexts()100%210%
set_CommunityContexts(...)100%210%
get_All()100%210%
set_All(...)100%210%
get_Verbose()100%210%
set_Verbose(...)100%210%
get_DetailedBreakdown()100%210%
set_DetailedBreakdown(...)100%210%
get_ConfigFile()100%210%
set_ConfigFile(...)100%210%

File(s)

/home/runner/work/KicktippAi/KicktippAi/src/Orchestrator/Commands/Observability/Cost/CostSettings.cs

#LineLine coverage
 1using System.ComponentModel;
 2using Spectre.Console.Cli;
 3using System.Text.Json.Serialization;
 4
 5namespace Orchestrator.Commands.Observability.Cost;
 6
 7public class CostConfiguration
 8{
 9    [JsonPropertyName("matchdays")]
 10    public string? Matchdays { get; set; }
 11
 12    [JsonPropertyName("bonus")]
 13    public bool? Bonus { get; set; }
 14
 15    [JsonPropertyName("models")]
 16    public string? Models { get; set; }
 17
 18    [JsonPropertyName("communityContexts")]
 19    public string? CommunityContexts { get; set; }
 20
 21    [JsonPropertyName("all")]
 22    public bool? All { get; set; }
 23
 24    [JsonPropertyName("verbose")]
 25    public bool? Verbose { get; set; }
 26
 27    [JsonPropertyName("detailedBreakdown")]
 28    public bool? DetailedBreakdown { get; set; }
 29}
 30
 31public class CostSettings : CommandSettings
 32{
 33    [CommandOption("--matchdays")]
 34    [Description("Comma-separated list of matchdays to include in cost calculation (e.g., '1,2,3' or 'all' for all match
 035    public string? Matchdays { get; set; }
 36
 37    [CommandOption("--bonus")]
 38    [Description("Include bonus predictions in cost calculation")]
 39    [DefaultValue(false)]
 040    public bool Bonus { get; set; }
 41
 42    [CommandOption("--models")]
 43    [Description("Comma-separated list of AI models to include in calculation (e.g., 'gpt-4o,o1-mini' or 'all' for all m
 044    public string? Models { get; set; }
 45
 46    [CommandOption("--community-contexts")]
 47    [Description("Comma-separated list of community contexts to include (e.g., 'ehonda-test-buli,ehonda-test-buli-2' or 
 048    public string? CommunityContexts { get; set; }
 49
 50    [CommandOption("--all")]
 51    [Description("Aggregate costs over all available matchdays, models, community contexts, and includes bonus predictio
 52    [DefaultValue(false)]
 053    public bool All { get; set; }
 54
 55    [CommandOption("-v|--verbose")]
 56    [Description("Enable verbose output to show detailed cost breakdown")]
 57    [DefaultValue(false)]
 058    public bool Verbose { get; set; }
 59
 60    [CommandOption("--detailed-breakdown")]
 61    [Description("Show detailed breakdown by community context and model in the results table")]
 62    [DefaultValue(false)]
 063    public bool DetailedBreakdown { get; set; }
 64
 65    [CommandOption("--file")]
 66    [Description("Load configuration from a JSON file (absolute or relative path)")]
 067    public string? ConfigFile { get; set; }
 68}