mirror of
https://github.com/Govor-team/Govor.git
synced 2026-07-21 19:54:55 +00:00
Refactor message service and move tests to Application.Tests
Renamed IMessageService to IMessageCommandService and updated all usages accordingly. Moved and renamed test files from Govor.API.Tests to the new Govor.Application.Tests project, updating namespaces to match. Refactored message-related services and controllers to use the new naming and structure. Added Govor.Application.Tests project to the solution.
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
using Govor.Application.Interfaces.Messages.Parameters;
|
||||
using Govor.Core.Models;
|
||||
|
||||
namespace Govor.Application.Interfaces.Messages;
|
||||
|
||||
// Combining IChatService and IGroupService functionalities relevant to messages
|
||||
public interface IMessageCommandService
|
||||
{
|
||||
Task<SendMessageResult> SendMessageAsync(SendMessage messageParameters);
|
||||
Task<EditMessageResult> EditMessageAsync(EditMessage messageParameters);
|
||||
Task<DeleteMessageResult> DeleteMessageAsync(DeleteMessage messageParameters);
|
||||
|
||||
// Potentially other message-related methods like:
|
||||
// Task<GetMessagesResult> GetMessagesAsync(Guid userId, Guid chatId, RecipientType chatType, int pageNumber, int pageSize);
|
||||
// Task<Result> MarkMessageAsReadAsync(Guid userId, Guid messageId);
|
||||
}
|
||||
|
||||
// Define specific result types for clarity, including original message for notifications if needed
|
||||
|
||||
public record SendMessageResult(bool IsSuccess, Exception? Exception, Message Message)
|
||||
: Result(IsSuccess, Exception, Message?.Id ?? Guid.Empty);
|
||||
|
||||
public record EditMessageResult(bool IsSuccess, Exception? Exception, Message? OriginalMessage)
|
||||
: Result(IsSuccess, Exception, OriginalMessage?.Id ?? Guid.Empty)
|
||||
{
|
||||
// OriginalMessage can be useful for the Hub to know details like RecipientType, RecipientId for notifications
|
||||
}
|
||||
|
||||
public record DeleteMessageResult(bool IsSuccess, Exception? Exception, Message? OriginalMessage)
|
||||
: Result(IsSuccess, Exception, OriginalMessage?.Id ?? Guid.Empty);
|
||||
Reference in New Issue
Block a user