< Summary

Information
Class: TeleFlow.Telegram.UpdateContextTelegramExtensions
Assembly: TeleFlow.Framework
File(s): /_/src/TeleFlow.Framework/UpdateContextTelegramExtensions.cs
Line coverage
90%
Covered lines: 20
Uncovered lines: 2
Coverable lines: 22
Total lines: 62
Line coverage: 90.9%
Branch coverage
50%
Covered branches: 1
Total branches: 2
Branch coverage: 50%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
TryGetTelegramUpdate(...)50%2266.66%
GetTelegramContext(...)100%11100%
GetMessageContext(...)100%11100%
GetCallbackQueryContext(...)100%11100%
GetChatMemberUpdatedContext(...)100%11100%

File(s)

/_/src/TeleFlow.Framework/UpdateContextTelegramExtensions.cs

#LineLine coverage
 1using System.Diagnostics.CodeAnalysis;
 2using Microsoft.Extensions.DependencyInjection;
 3using TeleFlow.Framework.Updates;
 4using TeleFlow.Telegram.Internal;
 5using TeleFlow.Telegram.Schema.Types;
 6
 7namespace TeleFlow.Telegram;
 8
 9public static class UpdateContextTelegramExtensions
 10{
 11    public static bool TryGetTelegramUpdate(
 12        this UpdateContext context,
 13        [NotNullWhen(true)] out Update? update)
 14    {
 115        ArgumentNullException.ThrowIfNull(context);
 16
 117        if (context.Payload is TelegramUpdatePayload payload)
 18        {
 119            update = payload.Update;
 120            return true;
 21        }
 22
 023        update = null;
 024        return false;
 25    }
 26
 27    public static TelegramUpdateContext GetTelegramContext(this UpdateContext context)
 28    {
 929        ArgumentNullException.ThrowIfNull(context);
 30
 931        return context.Services
 932            .GetRequiredService<TelegramContextFactory>()
 933            .CreateTelegramContext(context);
 34    }
 35
 36    public static MessageContext GetMessageContext(this UpdateContext context)
 37    {
 30338        ArgumentNullException.ThrowIfNull(context);
 39
 30340        return context.Services
 30341            .GetRequiredService<TelegramContextFactory>()
 30342            .CreateMessageContext(context);
 43    }
 44
 45    public static CallbackQueryContext GetCallbackQueryContext(this UpdateContext context)
 46    {
 8947        ArgumentNullException.ThrowIfNull(context);
 48
 8949        return context.Services
 8950            .GetRequiredService<TelegramContextFactory>()
 8951            .CreateCallbackQueryContext(context);
 52    }
 53
 54    public static ChatMemberUpdatedContext GetChatMemberUpdatedContext(this UpdateContext context)
 55    {
 1556        ArgumentNullException.ThrowIfNull(context);
 57
 1558        return context.Services
 1559            .GetRequiredService<TelegramContextFactory>()
 1560            .CreateChatMemberUpdatedContext(context);
 61    }
 62}