Files
ChatBot/ChatBot.Tests/Services/Telegram/BotInfoServiceSimpleTests.cs
Leonid Pershin b8fc79992a
All checks were successful
SonarQube / Build and analyze (push) Successful in 3m33s
fix covverage
2025-10-21 03:17:43 +03:00

55 lines
1.5 KiB
C#

using ChatBot.Services.Telegram.Services;
using FluentAssertions;
using Microsoft.Extensions.Logging;
using Moq;
using Telegram.Bot;
namespace ChatBot.Tests.Services.Telegram;
/// <summary>
/// Simple tests for BotInfoService that don't rely on mocking extension methods
/// </summary>
public class BotInfoServiceSimpleTests
{
[Fact]
public void Constructor_ShouldCreateInstance()
{
// Arrange
var botClientMock = new Mock<ITelegramBotClient>();
var loggerMock = new Mock<ILogger<BotInfoService>>();
// Act
var service = new BotInfoService(botClientMock.Object, loggerMock.Object);
// Assert
service.Should().NotBeNull();
}
[Fact]
public void IsCacheValid_InitiallyFalse()
{
// Arrange
var botClientMock = new Mock<ITelegramBotClient>();
var loggerMock = new Mock<ILogger<BotInfoService>>();
var service = new BotInfoService(botClientMock.Object, loggerMock.Object);
// Act & Assert
service.IsCacheValid().Should().BeFalse();
}
[Fact]
public void InvalidateCache_ShouldWork()
{
// Arrange
var botClientMock = new Mock<ITelegramBotClient>();
var loggerMock = new Mock<ILogger<BotInfoService>>();
var service = new BotInfoService(botClientMock.Object, loggerMock.Object);
// Act
service.InvalidateCache();
// Assert
service.IsCacheValid().Should().BeFalse();
}
}