feat(platform): route scheduler notifications through platform messenger
PR Checks / test-and-build (pull_request) Successful in 7m9s
PR Checks / test-and-build (pull_request) Successful in 7m9s
This commit is contained in:
+20
@@ -39,6 +39,26 @@ public sealed class TelegramPlatformMessengerSourceTests
|
||||
Assert.Contains("BatchMessageEditor.EditBatchMessageAsync", source, StringComparison.Ordinal);
|
||||
Assert.Contains("AnswerCallbackQuery", source, StringComparison.Ordinal);
|
||||
Assert.Contains("SendDocument", source, StringComparison.Ordinal);
|
||||
Assert.Contains("SendConfirmationRequestAsync", source, StringComparison.Ordinal);
|
||||
Assert.Contains("UpdateConfirmationRequestAsync", source, StringComparison.Ordinal);
|
||||
Assert.Contains("SendJoinLinkNotificationAsync", source, StringComparison.Ordinal);
|
||||
Assert.Contains("SendDirectSessionNotificationAsync", source, StringComparison.Ordinal);
|
||||
Assert.Contains("UpdateRescheduleVoteAsync", source, StringComparison.Ordinal);
|
||||
Assert.Contains("messageThreadId", source, StringComparison.Ordinal);
|
||||
Assert.Contains("ParseMode.Html", source, StringComparison.Ordinal);
|
||||
Assert.Contains("InlineKeyboardButton.WithCallbackData", source, StringComparison.Ordinal);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task RescheduleVotingDeadlineService_ShouldUsePlatformMessengerForVoteMessageUpdates()
|
||||
{
|
||||
var source = await ReadRepositoryFileAsync(
|
||||
"src/GmRelay.Bot/Features/Sessions/RescheduleSession/RescheduleVotingDeadlineService.cs");
|
||||
|
||||
Assert.DoesNotContain("ITelegramBotClient", source, StringComparison.Ordinal);
|
||||
Assert.DoesNotContain(".EditMessageText(", source, StringComparison.Ordinal);
|
||||
Assert.Contains("UpdateRescheduleVoteAsync", source, StringComparison.Ordinal);
|
||||
Assert.Contains("IPlatformMessenger", source, StringComparison.Ordinal);
|
||||
}
|
||||
|
||||
private static async Task<string> ReadRepositoryFileAsync(string relativePath)
|
||||
|
||||
+11
-8
@@ -22,25 +22,25 @@ public sealed class TelegramTopicIntegrationSmokeTests
|
||||
[Fact]
|
||||
public async Task GroupNotifications_ShouldSendToStoredForumTopic()
|
||||
{
|
||||
var confirmationHandler = await ReadRepositoryFileAsync("src/GmRelay.Bot/Features/Confirmation/SendConfirmation/SendConfirmationHandler.cs");
|
||||
var joinLinkHandler = await ReadRepositoryFileAsync("src/GmRelay.Bot/Features/Reminders/SendJoinLink/SendJoinLinkHandler.cs");
|
||||
var rsvpHandler = await ReadRepositoryFileAsync("src/GmRelay.Bot/Features/Confirmation/HandleRsvp/HandleRsvpHandler.cs");
|
||||
var confirmationHandler = await ReadRepositoryFileAsync("src/GmRelay.Shared/Features/Confirmation/SendConfirmation/SendConfirmationHandler.cs");
|
||||
var joinLinkHandler = await ReadRepositoryFileAsync("src/GmRelay.Shared/Features/Reminders/SendJoinLink/SendJoinLinkHandler.cs");
|
||||
var rsvpHandler = await ReadRepositoryFileAsync("src/GmRelay.Shared/Features/Confirmation/HandleRsvp/HandleRsvpHandler.cs");
|
||||
var cancelHandler = await ReadRepositoryFileAsync("src/GmRelay.Bot/Features/Sessions/CreateSession/CancelSessionHandler.cs");
|
||||
var initiateRescheduleHandler = await ReadRepositoryFileAsync("src/GmRelay.Bot/Features/Sessions/RescheduleSession/InitiateRescheduleHandler.cs");
|
||||
var rescheduleInputHandler = await ReadRepositoryFileAsync("src/GmRelay.Bot/Features/Sessions/RescheduleSession/HandleRescheduleTimeInputHandler.cs");
|
||||
var rescheduleDeadlineService = await ReadRepositoryFileAsync("src/GmRelay.Bot/Features/Sessions/RescheduleSession/RescheduleVotingDeadlineService.cs");
|
||||
var telegramMessenger = await ReadRepositoryFileAsync("src/GmRelay.Bot/Infrastructure/Telegram/TelegramPlatformMessenger.cs");
|
||||
|
||||
Assert.Contains("int? ThreadId", confirmationHandler, StringComparison.Ordinal);
|
||||
Assert.Contains("s.thread_id AS ThreadId", confirmationHandler, StringComparison.Ordinal);
|
||||
Assert.Contains("messageThreadId: session.ThreadId", confirmationHandler, StringComparison.Ordinal);
|
||||
Assert.Contains("ExternalThreadId", confirmationHandler, StringComparison.Ordinal);
|
||||
|
||||
Assert.Contains("int? ThreadId", joinLinkHandler, StringComparison.Ordinal);
|
||||
Assert.Contains("s.thread_id AS ThreadId", joinLinkHandler, StringComparison.Ordinal);
|
||||
Assert.Contains("messageThreadId: session.ThreadId", joinLinkHandler, StringComparison.Ordinal);
|
||||
Assert.Contains("ExternalThreadId", joinLinkHandler, StringComparison.Ordinal);
|
||||
|
||||
Assert.Contains("int? ThreadId", rsvpHandler, StringComparison.Ordinal);
|
||||
Assert.Contains("s.thread_id AS ThreadId", rsvpHandler, StringComparison.Ordinal);
|
||||
Assert.Contains("messageThreadId: session.ThreadId", rsvpHandler, StringComparison.Ordinal);
|
||||
Assert.Contains("PlatformMessageRef ConfirmationMessage", rsvpHandler, StringComparison.Ordinal);
|
||||
Assert.Contains("UpdateConfirmationRequestAsync", rsvpHandler, StringComparison.Ordinal);
|
||||
|
||||
Assert.Contains("int? MessageThreadId", cancelHandler, StringComparison.Ordinal);
|
||||
Assert.Contains("TelegramPlatformIds.Group(command.ChatId, command.MessageThreadId)", cancelHandler, StringComparison.Ordinal);
|
||||
@@ -55,6 +55,9 @@ public sealed class TelegramTopicIntegrationSmokeTests
|
||||
Assert.Contains("int? ThreadId", rescheduleDeadlineService, StringComparison.Ordinal);
|
||||
Assert.Contains("s.thread_id AS ThreadId", rescheduleDeadlineService, StringComparison.Ordinal);
|
||||
Assert.Contains("TelegramPlatformIds.Group(telegramFields.TelegramChatId, telegramFields.ThreadId)", rescheduleDeadlineService, StringComparison.Ordinal);
|
||||
|
||||
Assert.Contains("messageThreadId", telegramMessenger, StringComparison.Ordinal);
|
||||
Assert.Contains("ExternalThreadId", telegramMessenger, StringComparison.Ordinal);
|
||||
}
|
||||
|
||||
private static async Task<string> ReadRepositoryFileAsync(string relativePath)
|
||||
|
||||
Reference in New Issue
Block a user