< Summary

Information
Class: TestUtilities.OpenAITestHelpers
Assembly: TestUtilities
File(s): /home/runner/work/KicktippAi/KicktippAi/src/TestUtilities/OpenAITestHelpers.cs
Line coverage
100%
Covered lines: 11
Uncovered lines: 0
Coverable lines: 11
Total lines: 38
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
CreateChatTokenUsage(...)100%44100%

File(s)

/home/runner/work/KicktippAi/KicktippAi/src/TestUtilities/OpenAITestHelpers.cs

#LineLine coverage
 1using OpenAI.Chat;
 2
 3namespace TestUtilities;
 4
 5/// <summary>
 6/// Helper methods for creating OpenAI test objects
 7/// </summary>
 8public static class OpenAITestHelpers
 9{
 10    /// <summary>
 11    /// Creates a ChatTokenUsage instance for testing purposes
 12    /// </summary>
 13    /// <param name="inputTokens">The number of input tokens</param>
 14    /// <param name="outputTokens">The number of output tokens</param>
 15    /// <param name="cachedInputTokens">The number of cached input tokens (optional)</param>
 16    /// <param name="outputReasoningTokens">The number of output reasoning tokens (optional)</param>
 17    /// <returns>A ChatTokenUsage instance with the specified token counts</returns>
 18    public static ChatTokenUsage CreateChatTokenUsage(
 19        int inputTokens,
 20        int outputTokens,
 21        int cachedInputTokens = 0,
 22        int outputReasoningTokens = 0)
 23    {
 124        ChatInputTokenUsageDetails? inputDetails = cachedInputTokens > 0
 125            ? OpenAIChatModelFactory.ChatInputTokenUsageDetails(cachedTokenCount: cachedInputTokens)
 126            : null;
 27
 128        ChatOutputTokenUsageDetails? outputDetails = outputReasoningTokens > 0
 129            ? OpenAIChatModelFactory.ChatOutputTokenUsageDetails(reasoningTokenCount: outputReasoningTokens)
 130            : null;
 31
 132        return OpenAIChatModelFactory.ChatTokenUsage(
 133            inputTokenCount: inputTokens,
 134            outputTokenCount: outputTokens,
 135            inputTokenDetails: inputDetails,
 136            outputTokenDetails: outputDetails);
 37    }
 38}