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