add tests
This commit is contained in:
742
ChatBot.Tests/Models/TelegramBotSettingsTests.cs
Normal file
742
ChatBot.Tests/Models/TelegramBotSettingsTests.cs
Normal file
@@ -0,0 +1,742 @@
|
||||
using ChatBot.Models.Configuration;
|
||||
using FluentAssertions;
|
||||
|
||||
namespace ChatBot.Tests.Models;
|
||||
|
||||
public class TelegramBotSettingsTests
|
||||
{
|
||||
[Fact]
|
||||
public void Constructor_ShouldInitializePropertiesWithDefaultValues()
|
||||
{
|
||||
// Arrange & Act
|
||||
var settings = new TelegramBotSettings();
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(string.Empty);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void BotToken_ShouldBeSettable()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var expectedToken = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk";
|
||||
|
||||
// Act
|
||||
settings.BotToken = expectedToken;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(expectedToken);
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData("")]
|
||||
[InlineData("1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk")]
|
||||
[InlineData("1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk-")]
|
||||
[InlineData("1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk_")]
|
||||
[InlineData("1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk.")]
|
||||
[InlineData("1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk+")]
|
||||
[InlineData("1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk/")]
|
||||
[InlineData("1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk=")]
|
||||
public void BotToken_ShouldAcceptVariousFormats(string token)
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
|
||||
// Act
|
||||
settings.BotToken = token;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(token);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void AllProperties_ShouldBeMutable()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
|
||||
// Act
|
||||
settings.BotToken = "9876543210:ZYXWVUTSRQPONMLKJIHGFEDCBAzyxwvutsrqponmlkjihgfedcba";
|
||||
|
||||
// Assert
|
||||
settings
|
||||
.BotToken.Should()
|
||||
.Be("9876543210:ZYXWVUTSRQPONMLKJIHGFEDCBAzyxwvutsrqponmlkjihgfedcba");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportEmptyToken()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
|
||||
// Act
|
||||
settings.BotToken = "";
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be("");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportNullToken()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
|
||||
// Act
|
||||
settings.BotToken = null!;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().BeNull();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportValidBotToken()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var validToken = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk";
|
||||
|
||||
// Act
|
||||
settings.BotToken = validToken;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(validToken);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportShortBotToken()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var shortToken = "123:ABC";
|
||||
|
||||
// Act
|
||||
settings.BotToken = shortToken;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(shortToken);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportLongBotToken()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var longToken =
|
||||
"12345678901234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890";
|
||||
|
||||
// Act
|
||||
settings.BotToken = longToken;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(longToken);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithNumbers()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithNumbers = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk1234567890";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithNumbers;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithNumbers);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithLetters()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithLetters = "abcdefghij:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithLetters;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithLetters);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithMixedCase()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithMixedCase = "1234567890:AbCdEfGhIjKlMnOpQrStUvWxYz";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithMixedCase;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithMixedCase);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithSpecialCharacters()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithSpecialChars = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk-_.+/=";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithSpecialChars;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithSpecialChars);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithColon()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithColon = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk:";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithColon;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithColon);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithUnderscores()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithUnderscores = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk_";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithUnderscores;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithUnderscores);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithHyphens()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithHyphens = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk-";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithHyphens;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithHyphens);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithDots()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithDots = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk.";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithDots;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithDots);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithPlus()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithPlus = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk+";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithPlus;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithPlus);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithSlash()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithSlash = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk/";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithSlash;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithSlash);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithEquals()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithEquals = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk=";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithEquals;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithEquals);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithUnicode()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithUnicode = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijkабвгд";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithUnicode;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithUnicode);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithSpaces()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithSpaces = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk ";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithSpaces;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithSpaces);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithTabs()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithTabs = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk\t";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithTabs;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithTabs);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithNewlines()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithNewlines = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk\n";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithNewlines;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithNewlines);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithCarriageReturn()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithCarriageReturn = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk\r";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithCarriageReturn;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithCarriageReturn);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithQuotes()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithQuotes = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk\"";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithQuotes;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithQuotes);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithSingleQuotes()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithSingleQuotes = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk'";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithSingleQuotes;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithSingleQuotes);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithBackslashes()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithBackslashes = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk\\";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithBackslashes;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithBackslashes);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithForwardSlashes()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithForwardSlashes = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk/";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithForwardSlashes;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithForwardSlashes);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithPipes()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithPipes = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk|";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithPipes;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithPipes);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithAmpersands()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithAmpersands = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk&";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithAmpersands;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithAmpersands);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithPercents()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithPercents = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk%";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithPercents;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithPercents);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithDollarSigns()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithDollarSigns = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk$";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithDollarSigns;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithDollarSigns);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithAtSigns()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithAtSigns = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk@";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithAtSigns;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithAtSigns);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithHashSigns()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithHashSigns = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk#";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithHashSigns;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithHashSigns);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithExclamationMarks()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithExclamationMarks = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk!";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithExclamationMarks;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithExclamationMarks);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithQuestionMarks()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithQuestionMarks = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk?";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithQuestionMarks;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithQuestionMarks);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithBrackets()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithBrackets = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk[]";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithBrackets;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithBrackets);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithBraces()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithBraces = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk{}";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithBraces;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithBraces);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithParentheses()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithParentheses = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk()";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithParentheses;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithParentheses);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithAngleBrackets()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithAngleBrackets = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk<>";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithAngleBrackets;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithAngleBrackets);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithTildes()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithTildes = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk~";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithTildes;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithTildes);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithCaret()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithCaret = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk^";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithCaret;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithCaret);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithBackticks()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithBackticks = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk`";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithBackticks;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithBackticks);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithSemicolons()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithSemicolons = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk;";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithSemicolons;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithSemicolons);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithCommas()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithCommas = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk,";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithCommas;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithCommas);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithPeriods()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithPeriods = "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk.";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithPeriods;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithPeriods);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithAllSpecialCharacters()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithAllSpecialChars =
|
||||
"1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk-_.+/=:;\"'\\|&%$@#!?[]{}()<>~^`";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithAllSpecialChars;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithAllSpecialChars);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportVeryLongBotToken()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var veryLongToken =
|
||||
"12345678901234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
|
||||
|
||||
// Act
|
||||
settings.BotToken = veryLongToken;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(veryLongToken);
|
||||
settings.BotToken.Length.Should().BeGreaterThan(100);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithOnlyNumbers()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithOnlyNumbers = "1234567890:123456789012345678901234567890";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithOnlyNumbers;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithOnlyNumbers);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithOnlyLetters()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithOnlyLetters = "abcdefghij:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijk";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithOnlyLetters;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithOnlyLetters);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Settings_ShouldSupportBotTokenWithMixedContent()
|
||||
{
|
||||
// Arrange
|
||||
var settings = new TelegramBotSettings();
|
||||
var tokenWithMixedContent =
|
||||
"1234567890:AbC123dEf456GhI789jKl012MnO345pQr678sTu901vWx234yZ567";
|
||||
|
||||
// Act
|
||||
settings.BotToken = tokenWithMixedContent;
|
||||
|
||||
// Assert
|
||||
settings.BotToken.Should().Be(tokenWithMixedContent);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user