public async Task GetFriendshipById_ShouldReturnOkResult_WhenFriendshipExists()
        {
            // Arrange
            const int friendshipId = 1;

            FriendshipResource expectedFriendship = new FriendshipResource {
                FriendshipId = friendshipId
            };

            Mock <IMediator> mediatorMock = new Mock <IMediator>();

            mediatorMock
            .Setup(m => m.Send(It.IsAny <GetFriendshipByIdQuery>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(expectedFriendship);

            FriendshipController controller = new FriendshipController(mediatorMock.Object, null);

            // Act
            ActionResult <FriendshipResource> response = await controller.GetFriendshipById(friendshipId);

            // Assert
            OkObjectResult result = Assert.IsType <OkObjectResult>(response.Result);

            FriendshipResource friendship = Assert.IsType <FriendshipResource>(result.Value);

            Assert.Equal(friendshipId, friendship.FriendshipId);
        }
        public async Task GetFriendshipById_ShouldReturnNotFoundResult_WhenFriendshipIsNotFound()
        {
            // Arrange
            const int friendshipId = 632;

            Mock <IMediator> mediatorMock = new Mock <IMediator>();

            mediatorMock
            .Setup(m => m.Send(It.IsAny <GetFriendshipByIdQuery>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync((FriendshipResource)null);

            FriendshipController controller = new FriendshipController(mediatorMock.Object, null);

            // Act
            ActionResult <FriendshipResource> response = await controller.GetFriendshipById(friendshipId);

            // Assert
            NotFoundObjectResult result = Assert.IsType <NotFoundObjectResult>(response.Result);

            ErrorResource error = Assert.IsType <ErrorResource>(result.Value);

            Assert.Equal(StatusCodes.Status404NotFound, error.StatusCode);
        }