* warnings fixes
This commit is contained in:
@@ -148,6 +148,7 @@ public class ImplicitHandlerBuilderExtensionsGenerator : IIncrementalGenerator
|
|||||||
.AddMembers([.. targetters.Values, .. extensions]);
|
.AddMembers([.. targetters.Values, .. extensions]);
|
||||||
|
|
||||||
NamespaceDeclarationSyntax namespaceDeclaration = SyntaxFactory.NamespaceDeclaration(SyntaxFactory.ParseName("Telegrator"))
|
NamespaceDeclarationSyntax namespaceDeclaration = SyntaxFactory.NamespaceDeclaration(SyntaxFactory.ParseName("Telegrator"))
|
||||||
|
.WithLeadingTrivia(SyntaxFactory.ParseLeadingTrivia("#pragma warning disable CS1591"))
|
||||||
.WithMembers([extensionsClass]);
|
.WithMembers([extensionsClass]);
|
||||||
|
|
||||||
CompilationUnitSyntax compilationUnit = SyntaxFactory.CompilationUnit()
|
CompilationUnitSyntax compilationUnit = SyntaxFactory.CompilationUnit()
|
||||||
|
|||||||
@@ -221,7 +221,7 @@
|
|||||||
<member name="T:Telegrator.Providers.HostAwaitingProvider">
|
<member name="T:Telegrator.Providers.HostAwaitingProvider">
|
||||||
<inheritdoc/>
|
<inheritdoc/>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Telegrator.Providers.HostAwaitingProvider.#ctor(Microsoft.Extensions.Options.IOptions{Telegrator.TelegratorOptions},Microsoft.Extensions.Logging.ILogger{Telegrator.Providers.HostAwaitingProvider})">
|
<member name="M:Telegrator.Providers.HostAwaitingProvider.#ctor(Microsoft.Extensions.Options.IOptions{Telegrator.TelegratorOptions})">
|
||||||
<inheritdoc/>
|
<inheritdoc/>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:Telegrator.Providers.HostHandlersCollection">
|
<member name="T:Telegrator.Providers.HostHandlersCollection">
|
||||||
@@ -239,7 +239,7 @@
|
|||||||
<member name="T:Telegrator.Providers.HostHandlersProvider">
|
<member name="T:Telegrator.Providers.HostHandlersProvider">
|
||||||
<inheritdoc/>
|
<inheritdoc/>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Telegrator.Providers.HostHandlersProvider.#ctor(Telegrator.Core.IHandlersCollection,Microsoft.Extensions.Options.IOptions{Telegrator.TelegratorOptions},System.IServiceProvider,Microsoft.Extensions.Logging.ILogger{Telegrator.Providers.HostHandlersProvider})">
|
<member name="M:Telegrator.Providers.HostHandlersProvider.#ctor(Telegrator.Core.IHandlersCollection,Microsoft.Extensions.Options.IOptions{Telegrator.TelegratorOptions},System.IServiceProvider)">
|
||||||
<inheritdoc/>
|
<inheritdoc/>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Telegrator.Providers.HostHandlersProvider.GetHandlerInstance(Telegrator.Core.Descriptors.HandlerDescriptor,System.Threading.CancellationToken)">
|
<member name="M:Telegrator.Providers.HostHandlersProvider.GetHandlerInstance(Telegrator.Core.Descriptors.HandlerDescriptor,System.Threading.CancellationToken)">
|
||||||
@@ -274,6 +274,14 @@
|
|||||||
Provides method to configure Telegram Bot Host
|
Provides method to configure Telegram Bot Host
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:Telegrator.ServicesCollectionExtensions.AddStateStorage``1(Microsoft.Extensions.DependencyInjection.IServiceCollection)">
|
||||||
|
<summary>
|
||||||
|
Registers <see cref="T:Telegrator.Core.States.IStateStorage"/> service
|
||||||
|
</summary>
|
||||||
|
<typeparam name="TStorage"></typeparam>
|
||||||
|
<param name="services"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
<member name="M:Telegrator.ServicesCollectionExtensions.AddTelegramBotHostDefaults(Microsoft.Extensions.DependencyInjection.IServiceCollection)">
|
<member name="M:Telegrator.ServicesCollectionExtensions.AddTelegramBotHostDefaults(Microsoft.Extensions.DependencyInjection.IServiceCollection)">
|
||||||
<summary>
|
<summary>
|
||||||
Registers <see cref="T:Telegrator.Hosting.TelegramBotHost"/> default services
|
Registers <see cref="T:Telegrator.Hosting.TelegramBotHost"/> default services
|
||||||
|
|||||||
@@ -7161,6 +7161,11 @@
|
|||||||
Provides extension methods for working with Telegram Update objects.
|
Provides extension methods for working with Telegram Update objects.
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:Telegrator.UpdateExtensions.GetUserLanguageCode(Telegram.Bot.Types.Update)">
|
||||||
|
<summary>
|
||||||
|
Extracts the IETF language tag of the user's client from the update.
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="M:Telegrator.UpdateExtensions.GetSenderId(Telegram.Bot.Types.Update)">
|
<member name="M:Telegrator.UpdateExtensions.GetSenderId(Telegram.Bot.Types.Update)">
|
||||||
<summary>
|
<summary>
|
||||||
Selects from Update an object from which you can get the sender's ID
|
Selects from Update an object from which you can get the sender's ID
|
||||||
|
|||||||
@@ -9,3 +9,4 @@ using System.Diagnostics.CodeAnalysis;
|
|||||||
[assembly: SuppressMessage("Style", "IDE0090")]
|
[assembly: SuppressMessage("Style", "IDE0090")]
|
||||||
[assembly: SuppressMessage("Usage", "CA2254")]
|
[assembly: SuppressMessage("Usage", "CA2254")]
|
||||||
[assembly: SuppressMessage("Maintainability", "CA1510")]
|
[assembly: SuppressMessage("Maintainability", "CA1510")]
|
||||||
|
[assembly: SuppressMessage("Style", "IDE0270")]
|
||||||
|
|||||||
@@ -9,3 +9,4 @@ using System.Diagnostics.CodeAnalysis;
|
|||||||
[assembly: SuppressMessage("Style", "IDE0090")]
|
[assembly: SuppressMessage("Style", "IDE0090")]
|
||||||
[assembly: SuppressMessage("Usage", "CA2254")]
|
[assembly: SuppressMessage("Usage", "CA2254")]
|
||||||
[assembly: SuppressMessage("Maintainability", "CA1510")]
|
[assembly: SuppressMessage("Maintainability", "CA1510")]
|
||||||
|
[assembly: SuppressMessage("Style", "IDE0270")]
|
||||||
|
|||||||
@@ -8,3 +8,4 @@ using System.Diagnostics.CodeAnalysis;
|
|||||||
[assembly: SuppressMessage("Style", "IDE0290")]
|
[assembly: SuppressMessage("Style", "IDE0290")]
|
||||||
[assembly: SuppressMessage("Style", "IDE0090")]
|
[assembly: SuppressMessage("Style", "IDE0090")]
|
||||||
[assembly: SuppressMessage("Style", "IDE0057")]
|
[assembly: SuppressMessage("Style", "IDE0057")]
|
||||||
|
[assembly: SuppressMessage("Style", "IDE0270")]
|
||||||
|
|||||||
@@ -59,6 +59,7 @@ public static partial class HandlerBuilderExtensions
|
|||||||
return handlerBuilder;
|
return handlerBuilder;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#pragma warning disable CS1574
|
||||||
/// <inheritdoc cref="HandlerBuilderBase.SetState{TKey, TValue}(TValue?)"/>
|
/// <inheritdoc cref="HandlerBuilderBase.SetState{TKey, TValue}(TValue?)"/>
|
||||||
public static TBuilder SetState<TBuilder, TKey, TValue>(this TBuilder handlerBuilder, TValue? myState)
|
public static TBuilder SetState<TBuilder, TKey, TValue>(this TBuilder handlerBuilder, TValue? myState)
|
||||||
where TBuilder : HandlerBuilderBase
|
where TBuilder : HandlerBuilderBase
|
||||||
@@ -68,6 +69,7 @@ public static partial class HandlerBuilderExtensions
|
|||||||
handlerBuilder.SetState<TKey, TValue>(myState);
|
handlerBuilder.SetState<TKey, TValue>(myState);
|
||||||
return handlerBuilder;
|
return handlerBuilder;
|
||||||
}
|
}
|
||||||
|
#pragma warning restore CS1574
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Adds a targeted filter for a specific filter target type.
|
/// Adds a targeted filter for a specific filter target type.
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ public class DefaultStateStorage : IStateStorage
|
|||||||
if (key is null)
|
if (key is null)
|
||||||
throw new ArgumentNullException(nameof(key));
|
throw new ArgumentNullException(nameof(key));
|
||||||
|
|
||||||
if (!storage.TryRemove(key, out object value))
|
if (!storage.TryRemove(key, out _))
|
||||||
throw new Exception("Failed to remove key '" + key + "' from storage.");
|
throw new Exception("Failed to remove key '" + key + "' from storage.");
|
||||||
|
|
||||||
return Task.CompletedTask;
|
return Task.CompletedTask;
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ namespace Telegrator.States;
|
|||||||
public class EnumStateMachine<TEnum> : IStateMachine<TEnum> where TEnum : struct, Enum, IEquatable<TEnum>
|
public class EnumStateMachine<TEnum> : IStateMachine<TEnum> where TEnum : struct, Enum, IEquatable<TEnum>
|
||||||
{
|
{
|
||||||
private readonly TEnum[] _states = Enum.GetValues(typeof(TEnum)).Cast<TEnum>().ToArray();
|
private readonly TEnum[] _states = Enum.GetValues(typeof(TEnum)).Cast<TEnum>().ToArray();
|
||||||
private TEnum _defaultState => _states.FirstOrDefault();
|
private TEnum DefaultState => _states.FirstOrDefault();
|
||||||
|
|
||||||
/// <inheritdoc/>
|
/// <inheritdoc/>
|
||||||
public async Task<TEnum> Current(IStateStorage storage, string updateKey, CancellationToken cancellationToken = default)
|
public async Task<TEnum> Current(IStateStorage storage, string updateKey, CancellationToken cancellationToken = default)
|
||||||
@@ -19,7 +19,7 @@ public class EnumStateMachine<TEnum> : IStateMachine<TEnum> where TEnum : struct
|
|||||||
TEnum state = await storage.GetAsync<TEnum>(key, cancellationToken);
|
TEnum state = await storage.GetAsync<TEnum>(key, cancellationToken);
|
||||||
|
|
||||||
return EqualityComparer<TEnum>.Default.Equals(state, default)
|
return EqualityComparer<TEnum>.Default.Equals(state, default)
|
||||||
? _defaultState : state;
|
? DefaultState : state;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <inheritdoc/>
|
/// <inheritdoc/>
|
||||||
@@ -54,7 +54,7 @@ public class EnumStateMachine<TEnum> : IStateMachine<TEnum> where TEnum : struct
|
|||||||
public async Task Reset(IStateStorage storage, string updateKey, CancellationToken cancellationToken = default)
|
public async Task Reset(IStateStorage storage, string updateKey, CancellationToken cancellationToken = default)
|
||||||
{
|
{
|
||||||
string key = FormatKey(updateKey);
|
string key = FormatKey(updateKey);
|
||||||
await storage.SetAsync(key, _defaultState, cancellationToken);
|
await storage.SetAsync(key, DefaultState, cancellationToken);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static string FormatKey(string updateKey)
|
private static string FormatKey(string updateKey)
|
||||||
|
|||||||
@@ -32,6 +32,7 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<PackageReference Include="Microsoft.Bcl.AsyncInterfaces" Version="10.0.3" />
|
||||||
<PackageReference Include="System.Threading.Channels" Version="10.0.3" />
|
<PackageReference Include="System.Threading.Channels" Version="10.0.3" />
|
||||||
<PackageReference Include="Telegram.Bot" Version="22.9.5.3" />
|
<PackageReference Include="Telegram.Bot" Version="22.9.5.3" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|||||||
@@ -515,6 +515,21 @@ public static partial class HandlersCollectionExtensions
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public static partial class UpdateExtensions
|
public static partial class UpdateExtensions
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Extracts the IETF language tag of the user's client from the update.
|
||||||
|
/// </summary>
|
||||||
|
public static string? GetUserLanguageCode(this Update update) => update switch
|
||||||
|
{
|
||||||
|
{ Message.From: { } from } => from.LanguageCode,
|
||||||
|
{ EditedMessage.From: { } from } => from.LanguageCode,
|
||||||
|
{ CallbackQuery.From: { } from } => from.LanguageCode,
|
||||||
|
{ InlineQuery.From: { } from } => from.LanguageCode,
|
||||||
|
{ ChatJoinRequest.From: { } from } => from.LanguageCode,
|
||||||
|
{ PreCheckoutQuery.From: { } from } => from.LanguageCode,
|
||||||
|
{ ShippingQuery.From: { } from } => from.LanguageCode,
|
||||||
|
_ => null
|
||||||
|
};
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Selects from Update an object from which you can get the sender's ID
|
/// Selects from Update an object from which you can get the sender's ID
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ public class CollectionTests
|
|||||||
{
|
{
|
||||||
// Arrange
|
// Arrange
|
||||||
var list = new HandlerDescriptorList();
|
var list = new HandlerDescriptorList();
|
||||||
var descriptor = CreateTestDescriptor(UpdateType.Message);
|
var descriptor = CreateTestDescriptor();
|
||||||
|
|
||||||
// Act
|
// Act
|
||||||
list.Add(descriptor);
|
list.Add(descriptor);
|
||||||
@@ -64,9 +64,9 @@ public class CollectionTests
|
|||||||
{
|
{
|
||||||
// Arrange
|
// Arrange
|
||||||
var list = new HandlerDescriptorList();
|
var list = new HandlerDescriptorList();
|
||||||
var descriptor1 = CreateTestDescriptor(UpdateType.Message);
|
var descriptor1 = CreateTestDescriptor();
|
||||||
var descriptor2 = CreateTestDescriptor(UpdateType.CallbackQuery);
|
var descriptor2 = CreateTestDescriptor();
|
||||||
var descriptor3 = CreateTestDescriptor(UpdateType.InlineQuery);
|
var descriptor3 = CreateTestDescriptor();
|
||||||
|
|
||||||
// Act
|
// Act
|
||||||
list.Add(descriptor1);
|
list.Add(descriptor1);
|
||||||
@@ -89,7 +89,7 @@ public class CollectionTests
|
|||||||
public void HandlerDescriptorList_Indexer_ShouldReturnDescriptorAtIndex()
|
public void HandlerDescriptorList_Indexer_ShouldReturnDescriptorAtIndex()
|
||||||
{
|
{
|
||||||
// Arrange
|
// Arrange
|
||||||
var descriptor = CreateTestDescriptor(UpdateType.Message);
|
var descriptor = CreateTestDescriptor();
|
||||||
var list = new HandlerDescriptorList
|
var list = new HandlerDescriptorList
|
||||||
{
|
{
|
||||||
descriptor
|
descriptor
|
||||||
@@ -116,7 +116,7 @@ public class CollectionTests
|
|||||||
// Arrange
|
// Arrange
|
||||||
var list = new HandlerDescriptorList
|
var list = new HandlerDescriptorList
|
||||||
{
|
{
|
||||||
CreateTestDescriptor(UpdateType.Message)
|
CreateTestDescriptor()
|
||||||
};
|
};
|
||||||
|
|
||||||
// Act & Assert
|
// Act & Assert
|
||||||
@@ -133,8 +133,8 @@ public class CollectionTests
|
|||||||
public void HandlerDescriptorList_ShouldBeEnumerable()
|
public void HandlerDescriptorList_ShouldBeEnumerable()
|
||||||
{
|
{
|
||||||
// Arrange
|
// Arrange
|
||||||
var descriptor1 = CreateTestDescriptor(UpdateType.Message);
|
var descriptor1 = CreateTestDescriptor();
|
||||||
var descriptor2 = CreateTestDescriptor(UpdateType.CallbackQuery);
|
var descriptor2 = CreateTestDescriptor();
|
||||||
var list = new HandlerDescriptorList
|
var list = new HandlerDescriptorList
|
||||||
{
|
{
|
||||||
descriptor1,
|
descriptor1,
|
||||||
@@ -161,8 +161,8 @@ public class CollectionTests
|
|||||||
// Arrange
|
// Arrange
|
||||||
var list = new HandlerDescriptorList
|
var list = new HandlerDescriptorList
|
||||||
{
|
{
|
||||||
CreateTestDescriptor(UpdateType.Message),
|
CreateTestDescriptor(),
|
||||||
CreateTestDescriptor(UpdateType.CallbackQuery)
|
CreateTestDescriptor()
|
||||||
};
|
};
|
||||||
|
|
||||||
// Act
|
// Act
|
||||||
@@ -183,8 +183,8 @@ public class CollectionTests
|
|||||||
{
|
{
|
||||||
// Arrange
|
// Arrange
|
||||||
var list = new HandlerDescriptorList();
|
var list = new HandlerDescriptorList();
|
||||||
var descriptor = CreateTestDescriptor(UpdateType.Message);
|
var descriptor = CreateTestDescriptor();
|
||||||
var nonExistentDescriptor = CreateTestDescriptor(UpdateType.CallbackQuery);
|
var nonExistentDescriptor = CreateTestDescriptor();
|
||||||
|
|
||||||
// Act
|
// Act
|
||||||
list.Add(descriptor);
|
list.Add(descriptor);
|
||||||
@@ -206,7 +206,7 @@ public class CollectionTests
|
|||||||
{
|
{
|
||||||
// Arrange
|
// Arrange
|
||||||
var list = new HandlerDescriptorList();
|
var list = new HandlerDescriptorList();
|
||||||
var descriptor = CreateTestDescriptor(UpdateType.Message);
|
var descriptor = CreateTestDescriptor();
|
||||||
list.Add(descriptor);
|
list.Add(descriptor);
|
||||||
|
|
||||||
// Act
|
// Act
|
||||||
@@ -228,7 +228,7 @@ public class CollectionTests
|
|||||||
{
|
{
|
||||||
// Arrange
|
// Arrange
|
||||||
var list = new HandlerDescriptorList();
|
var list = new HandlerDescriptorList();
|
||||||
var nonExistentDescriptor = CreateTestDescriptor(UpdateType.CallbackQuery);
|
var nonExistentDescriptor = CreateTestDescriptor();
|
||||||
|
|
||||||
// Act
|
// Act
|
||||||
var removed = list.Remove(nonExistentDescriptor);
|
var removed = list.Remove(nonExistentDescriptor);
|
||||||
@@ -269,7 +269,7 @@ public class CollectionTests
|
|||||||
// Act
|
// Act
|
||||||
for (int i = 0; i < itemsCount; i++)
|
for (int i = 0; i < itemsCount; i++)
|
||||||
{
|
{
|
||||||
list.Add(CreateTestDescriptor(UpdateType.Message));
|
list.Add(CreateTestDescriptor());
|
||||||
}
|
}
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
@@ -295,7 +295,7 @@ public class CollectionTests
|
|||||||
{
|
{
|
||||||
for (int j = 0; j < 10; j++)
|
for (int j = 0; j < 10; j++)
|
||||||
{
|
{
|
||||||
list.Add(CreateTestDescriptor(UpdateType.Message));
|
list.Add(CreateTestDescriptor());
|
||||||
}
|
}
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
@@ -309,7 +309,7 @@ public class CollectionTests
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Вспомогательный метод для создания тестового дескриптора.
|
/// Вспомогательный метод для создания тестового дескриптора.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private static HandlerDescriptor CreateTestDescriptor(UpdateType updateType)
|
private static HandlerDescriptor CreateTestDescriptor()
|
||||||
{
|
{
|
||||||
return new HandlerDescriptor(DescriptorType.General, typeof(TestUpdateHandler));
|
return new HandlerDescriptor(DescriptorType.General, typeof(TestUpdateHandler));
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user