< Summary

Information
Class: TeleFlow.Telegram.Internal.TelegramUpdateBatchReceiver
Assembly: TeleFlow.Telegram.Client
File(s): /_/src/TeleFlow.Telegram.Client/Internal/TelegramUpdateBatchReceiver.cs
Line coverage
100%
Covered lines: 7
Uncovered lines: 0
Coverable lines: 7
Total lines: 24
Line coverage: 100%
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
.ctor(...)50%22100%
ReceiveAsync()100%11100%

File(s)

/_/src/TeleFlow.Telegram.Client/Internal/TelegramUpdateBatchReceiver.cs

#LineLine coverage
 1using TeleFlow.Telegram.Schema.Methods;
 2
 3namespace TeleFlow.Telegram.Internal;
 4
 5/// <summary>
 6/// Executes the specialized getUpdates request that decodes each result element independently.
 7/// </summary>
 8internal sealed class TelegramUpdateBatchReceiver(ITelegramRequestExecutor executor) : ITelegramUpdateBatchReceiver
 9{
 1010    private readonly ITelegramRequestExecutor _executor = executor ?? throw new ArgumentNullException(nameof(executor));
 11
 12    public async Task<IReadOnlyList<TelegramUpdateDecodeResult>> ReceiveAsync(
 13        GetUpdates request,
 14        CancellationToken cancellationToken)
 15    {
 1216        ArgumentNullException.ThrowIfNull(request);
 17
 1218        var response = await _executor.ExecuteAsync(
 1219            new TelegramUpdateBatchRequest(request),
 1220            cancellationToken).ConfigureAwait(false);
 21
 1122        return response.Items;
 1123    }
 24}