diff options
| author | Danail Dimitrov <danaildimitrov321@gmail.com> | 2021-01-26 15:49:38 +0200 |
|---|---|---|
| committer | Danail Dimitrov <danaildimitrov321@gmail.com> | 2021-01-26 15:49:38 +0200 |
| commit | f61da9c07ff37cb350528e255539b4ec11181bde (patch) | |
| tree | f9ff4f93e2fde7068037a90f79a786139f6eec41 /src/DevHive.Tests/DevHive.Services.Tests/PostService.Tests.cs | |
| parent | d2bc08c0dcd6f0dc0822333bbb00c9fc851f49cb (diff) | |
| download | DevHive-f61da9c07ff37cb350528e255539b4ec11181bde.tar DevHive-f61da9c07ff37cb350528e255539b4ec11181bde.tar.gz DevHive-f61da9c07ff37cb350528e255539b4ec11181bde.zip | |
Adding User Repository Tests
Diffstat (limited to 'src/DevHive.Tests/DevHive.Services.Tests/PostService.Tests.cs')
| -rw-r--r-- | src/DevHive.Tests/DevHive.Services.Tests/PostService.Tests.cs | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/src/DevHive.Tests/DevHive.Services.Tests/PostService.Tests.cs b/src/DevHive.Tests/DevHive.Services.Tests/PostService.Tests.cs index bf6817b..9864c5b 100644 --- a/src/DevHive.Tests/DevHive.Services.Tests/PostService.Tests.cs +++ b/src/DevHive.Tests/DevHive.Services.Tests/PostService.Tests.cs @@ -4,6 +4,7 @@ using AutoMapper; using DevHive.Data.Interfaces.Repositories; using DevHive.Data.Models; using DevHive.Services.Models.Post.Comment; +using DevHive.Services.Models.Post.Post; using DevHive.Services.Services; using Moq; using NUnit.Framework; @@ -185,5 +186,52 @@ namespace DevHive.Services.Tests //TO DO: Implement #endregion #endregion + + #region Posts + #region Create + [Test] + public async Task CreatePost_ReturnsIdOfThePost_WhenItIsSuccessfullyCreated() + { + Guid id = Guid.NewGuid(); + CreatePostServiceModel createPostServiceModel = new CreatePostServiceModel + { + }; + Post post = new Post + { + Message = MESSAGE, + Id = id + }; + + this.PostRepositoryMock.Setup(p => p.AddAsync(It.IsAny<Post>())).Returns(Task.FromResult(true)); + this.PostRepositoryMock.Setup(p => p.GetPostByIssuerAndTimeCreatedAsync(It.IsAny<Guid>(), It.IsAny<DateTime>())).Returns(Task.FromResult(post)); + this.MapperMock.Setup(p => p.Map<Post>(It.IsAny<CreatePostServiceModel>())).Returns(post); + + Guid result = await this.PostService.CreatePost(createPostServiceModel); + + Assert.AreEqual(id, result, "CreatePost does not return the correct id"); + } + + [Test] + public async Task CreatePost_ReturnsEmptyGuid_WhenItIsNotSuccessfullyCreated() + { + CreatePostServiceModel createPostServiceModel = new CreatePostServiceModel + { + }; + Post post = new Post + { + Message = MESSAGE, + }; + + this.PostRepositoryMock.Setup(p => p.AddAsync(It.IsAny<Post>())).Returns(Task.FromResult(false)); + this.MapperMock.Setup(p => p.Map<Post>(It.IsAny<CreatePostServiceModel>())).Returns(post); + + Guid result = await this.PostService.CreatePost(createPostServiceModel); + + Assert.AreEqual(Guid.Empty, result, "CreatePost does not return empty id"); + } + #endregion + + + #endregion } } |
