From 98e17766b203734a1817eed94338e2d25f4395f7 Mon Sep 17 00:00:00 2001 From: transtrike Date: Sat, 13 Feb 2021 16:20:18 +0200 Subject: Project Restructure P.1 --- .../DevHive.Services.Tests/PostService.Tests.cs | 271 --------------------- 1 file changed, 271 deletions(-) delete mode 100644 src/DevHive.Tests/DevHive.Services.Tests/PostService.Tests.cs (limited to 'src/DevHive.Tests/DevHive.Services.Tests/PostService.Tests.cs') diff --git a/src/DevHive.Tests/DevHive.Services.Tests/PostService.Tests.cs b/src/DevHive.Tests/DevHive.Services.Tests/PostService.Tests.cs deleted file mode 100644 index 900608c..0000000 --- a/src/DevHive.Tests/DevHive.Services.Tests/PostService.Tests.cs +++ /dev/null @@ -1,271 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading.Tasks; -using AutoMapper; -using DevHive.Data.Interfaces.Repositories; -using DevHive.Data.Models; -using DevHive.Services.Interfaces; -using DevHive.Services.Models.Post; -using DevHive.Services.Services; -using Microsoft.AspNetCore.Http; -using Moq; -using NUnit.Framework; - -namespace DevHive.Services.Tests -{ - [TestFixture] - public class PostServiceTests - { - private const string MESSAGE = "Gosho Trapov"; - private Mock CloudServiceMock { get; set; } - private Mock PostRepositoryMock { get; set; } - private Mock CommentRepositoryMock { get; set; } - private Mock UserRepositoryMock { get; set; } - private Mock MapperMock { get; set; } - private PostService PostService { get; set; } - - #region SetUps - [SetUp] - public void Setup() - { - this.PostRepositoryMock = new Mock(); - this.CloudServiceMock = new Mock(); - this.UserRepositoryMock = new Mock(); - this.CommentRepositoryMock = new Mock(); - this.MapperMock = new Mock(); - this.PostService = new PostService(this.CloudServiceMock.Object, this.UserRepositoryMock.Object, this.PostRepositoryMock.Object, this.CommentRepositoryMock.Object, this.MapperMock.Object); - } - #endregion - - #region CreatePost - [Test] - public async Task CreatePost_ReturnsIdOfThePost_WhenItIsSuccessfullyCreated() - { - Guid postId = Guid.NewGuid(); - User creator = new User { Id = Guid.NewGuid() }; - CreatePostServiceModel createPostServiceModel = new CreatePostServiceModel - { - Files = new List() - }; - Post post = new Post - { - Message = MESSAGE, - Id = postId, - }; - - this.PostRepositoryMock.Setup(p => p.AddAsync(It.IsAny())).Returns(Task.FromResult(true)); - this.PostRepositoryMock.Setup(p => p.GetPostByCreatorAndTimeCreatedAsync(It.IsAny(), It.IsAny())).Returns(Task.FromResult(post)); - this.UserRepositoryMock.Setup(p => p.DoesUserExistAsync(It.IsAny())).Returns(Task.FromResult(true)); - this.UserRepositoryMock.Setup(p => p.GetByIdAsync(It.IsAny())).Returns(Task.FromResult(creator)); - this.MapperMock.Setup(p => p.Map(It.IsAny())).Returns(post); - - Guid result = await this.PostService.CreatePost(createPostServiceModel); - - Assert.AreEqual(postId, result, "CreatePost does not return the correct id"); - } - - [Test] - public async Task CreatePost_ReturnsEmptyGuid_WhenItIsNotSuccessfullyCreated() - { - CreatePostServiceModel createPostServiceModel = new CreatePostServiceModel - { - Files = new List() - }; - Post post = new Post - { - Message = MESSAGE, - }; - - this.PostRepositoryMock.Setup(p => p.AddAsync(It.IsAny())).Returns(Task.FromResult(false)); - this.UserRepositoryMock.Setup(p => p.DoesUserExistAsync(It.IsAny())).Returns(Task.FromResult(true)); - this.MapperMock.Setup(p => p.Map(It.IsAny())).Returns(post); - - Guid result = await this.PostService.CreatePost(createPostServiceModel); - - Assert.AreEqual(Guid.Empty, result, "CreatePost does not return empty id"); - } - - [Test] - public void CreatePost_ThrowsException_WhenUserDoesNotExist() - { - const string EXCEPTION_MESSAGE = "User does not exist!"; - CreatePostServiceModel createPostServiceModel = new CreatePostServiceModel - { - }; - Post post = new Post - { - Message = MESSAGE, - }; - - Exception ex = Assert.ThrowsAsync(() => this.PostService.CreatePost(createPostServiceModel), "CreatePost does not throw excpeion when the user does not exist"); - - Assert.AreEqual(EXCEPTION_MESSAGE, ex.Message, "Excapetion message is not correct"); - } - #endregion - - #region GetPostById - [Test] - public async Task GetPostById_ReturnsThePost_WhenItExists() - { - Guid creatorId = new Guid(); - User creator = new User { Id = creatorId }; - Post post = new Post - { - Message = MESSAGE, - Creator = creator - }; - ReadPostServiceModel readPostServiceModel = new ReadPostServiceModel - { - Message = MESSAGE - }; - User user = new User - { - Id = creatorId, - }; - - this.PostRepositoryMock.Setup(p => p.GetByIdAsync(It.IsAny())).Returns(Task.FromResult(post)); - this.UserRepositoryMock.Setup(p => p.GetByIdAsync(It.IsAny())).Returns(Task.FromResult(user)); - this.MapperMock.Setup(p => p.Map(It.IsAny())).Returns(readPostServiceModel); - - ReadPostServiceModel result = await this.PostService.GetPostById(new Guid()); - - Assert.AreEqual(MESSAGE, result.Message); - } - - [Test] - public void GetPostById_ThorwsException_WhenTheUserDoesNotExist() - { - const string EXCEPTION_MESSAGE = "The user does not exist!"; - Guid creatorId = new Guid(); - User creator = new User { Id = creatorId }; - Post post = new Post - { - Message = MESSAGE, - Creator = creator - }; - - this.PostRepositoryMock.Setup(p => p.GetByIdAsync(It.IsAny())).Returns(Task.FromResult(post)); - - Exception ex = Assert.ThrowsAsync(() => this.PostService.GetPostById(new Guid()), "GetPostById does not throw exception when the user does not exist"); - - Assert.AreEqual(EXCEPTION_MESSAGE, ex.Message); - } - - [Test] - public void GetPostById_ThrowsException_WhenCommentDoesNotExist() - { - string exceptionMessage = "The post does not exist!"; - Guid creatorId = new Guid(); - User user = new User - { - Id = creatorId, - }; - - this.PostRepositoryMock.Setup(p => p.GetByIdAsync(It.IsAny())).Returns(Task.FromResult(null)); - this.UserRepositoryMock.Setup(p => p.GetByIdAsync(It.IsAny())).Returns(Task.FromResult(user)); - - Exception ex = Assert.ThrowsAsync(() => this.PostService.GetPostById(new Guid())); - - Assert.AreEqual(exceptionMessage, ex.Message, "Incorecct exception message"); - } - #endregion - - #region UpdatePost - [Test] - public async Task UpdatePost_ReturnsTheIdOfThePost_WhenUpdatedSuccessfully() - { - Guid id = Guid.NewGuid(); - Post post = new Post - { - Id = id, - Message = MESSAGE - }; - UpdatePostServiceModel updatePostServiceModel = new UpdatePostServiceModel - { - PostId = id, - NewMessage = MESSAGE, - Files = new List() - }; - - this.PostRepositoryMock.Setup(p => p.DoesPostExist(It.IsAny())).Returns(Task.FromResult(true)); - this.PostRepositoryMock.Setup(p => p.EditAsync(It.IsAny(), It.IsAny())).Returns(Task.FromResult(true)); - this.PostRepositoryMock.Setup(p => p.GetByIdAsync(It.IsAny())).Returns(Task.FromResult(post)); - this.MapperMock.Setup(p => p.Map(It.IsAny())).Returns(post); - - Guid result = await this.PostService.UpdatePost(updatePostServiceModel); - - Assert.AreEqual(updatePostServiceModel.PostId, result); - } - - [Test] - public async Task UpdatePost_ReturnsEmptyId_WhenThePostIsNotUpdatedSuccessfully() - { - Post post = new Post - { - Message = MESSAGE - }; - UpdatePostServiceModel updatePostServiceModel = new UpdatePostServiceModel - { - PostId = Guid.NewGuid(), - NewMessage = MESSAGE, - Files = new List() - }; - - this.PostRepositoryMock.Setup(p => p.DoesPostExist(It.IsAny())).Returns(Task.FromResult(true)); - this.PostRepositoryMock.Setup(p => p.EditAsync(It.IsAny(), It.IsAny())).Returns(Task.FromResult(false)); - this.MapperMock.Setup(p => p.Map(It.IsAny())).Returns(post); - - Guid result = await this.PostService.UpdatePost(updatePostServiceModel); - - Assert.AreEqual(Guid.Empty, result); - } - - [Test] - public void UpdatePost_ThrowsArgumentException_WhenCommentDoesNotExist() - { - string exceptionMessage = "Post does not exist!"; - UpdatePostServiceModel updatePostServiceModel = new UpdatePostServiceModel - { - }; - - this.PostRepositoryMock.Setup(p => p.DoesPostExist(It.IsAny())).Returns(Task.FromResult(false)); - - Exception ex = Assert.ThrowsAsync(() => this.PostService.UpdatePost(updatePostServiceModel)); - - Assert.AreEqual(exceptionMessage, ex.Message, "Incorecct exception message"); - } - #endregion - - #region DeletePost - [Test] - [TestCase(true)] - [TestCase(false)] - public async Task Deletepost_ShouldReturnIfDeletionIsSuccessfull_WhenPostExists(bool shouldPass) - { - Guid id = new Guid(); - Post post = new Post(); - - this.PostRepositoryMock.Setup(p => p.DoesPostExist(It.IsAny())).Returns(Task.FromResult(true)); - this.PostRepositoryMock.Setup(p => p.GetByIdAsync(It.IsAny())).Returns(Task.FromResult(post)); - this.PostRepositoryMock.Setup(p => p.DeleteAsync(It.IsAny())).Returns(Task.FromResult(shouldPass)); - - bool result = await this.PostService.DeletePost(id); - - Assert.AreEqual(shouldPass, result); - } - - [Test] - public void DeletePost_ThrowsException_WhenPostDoesNotExist() - { - string exceptionMessage = "Post does not exist!"; - Guid id = new Guid(); - - this.PostRepositoryMock.Setup(p => p.DoesPostExist(It.IsAny())).Returns(Task.FromResult(false)); - - Exception ex = Assert.ThrowsAsync(() => this.PostService.DeletePost(id)); - - Assert.AreEqual(exceptionMessage, ex.Message, "Incorecct exception message"); - } - #endregion - } -} -- cgit v1.2.3