From c2aafa40bb5132da0bcd311f8d6a15ae9d697958 Mon Sep 17 00:00:00 2001 From: Danail Dimitrov Date: Wed, 27 Jan 2021 21:57:50 +0200 Subject: Adding LanguageService tests --- .../DevHive.Data.Tests/UserRepositoryTests.cs | 4 +- .../LanguageService.Tests.cs | 45 ++++++++++++++++++---- 2 files changed, 39 insertions(+), 10 deletions(-) diff --git a/src/DevHive.Tests/DevHive.Data.Tests/UserRepositoryTests.cs b/src/DevHive.Tests/DevHive.Data.Tests/UserRepositoryTests.cs index 7c3ba87..6cc7b87 100644 --- a/src/DevHive.Tests/DevHive.Data.Tests/UserRepositoryTests.cs +++ b/src/DevHive.Tests/DevHive.Data.Tests/UserRepositoryTests.cs @@ -277,7 +277,7 @@ namespace DevHive.Data.Tests return new() { Id = Guid.NewGuid(), - UserName = "pioneer10", + UserName = "dummyUser", FirstName = "Spas", LastName = "Spasov", Email = "abv@abv.bg", @@ -319,7 +319,7 @@ namespace DevHive.Data.Tests return new() { Id = Guid.NewGuid(), - UserName = "pioneer10", + UserName = "anotherDummyUser", FirstName = "Alex", LastName = "Spiridonov", Email = "a_spiridonov@abv.bg", diff --git a/src/DevHive.Tests/DevHive.Services.Tests/LanguageService.Tests.cs b/src/DevHive.Tests/DevHive.Services.Tests/LanguageService.Tests.cs index 392dc88..1b59f91 100644 --- a/src/DevHive.Tests/DevHive.Services.Tests/LanguageService.Tests.cs +++ b/src/DevHive.Tests/DevHive.Services.Tests/LanguageService.Tests.cs @@ -1,4 +1,5 @@ using System; +using System.Collections.Generic; using System.Threading.Tasks; using AutoMapper; using DevHive.Data.Interfaces.Repositories; @@ -17,6 +18,7 @@ namespace DevHive.Services.Tests private Mock MapperMock { get; set; } private LanguageService LanguageService { get; set; } + #region SetUps [SetUp] public void SetUp() { @@ -24,8 +26,9 @@ namespace DevHive.Services.Tests this.MapperMock = new Mock(); this.LanguageService = new LanguageService(this.LanguageRepositoryMock.Object, this.MapperMock.Object); } + #endregion - #region Create + #region CreateLanguage [Test] public async Task CreateLanguage_ReturnsNonEmptyGuid_WhenEntityIsAddedSuccessfully() { @@ -98,7 +101,7 @@ namespace DevHive.Services.Tests } #endregion - #region Read + #region GetLanguageById [Test] public async Task GetLanguageById_ReturnsTheLanguage_WhenItExists() { @@ -134,7 +137,37 @@ namespace DevHive.Services.Tests } #endregion - #region Update + #region GetLanguages + [Test] + public void GetLanguages_ReturnsAllLanguages_IfAnyExist() + { + ReadLanguageServiceModel firstLanguage = new ReadLanguageServiceModel(); + ReadLanguageServiceModel secondLanguage = new ReadLanguageServiceModel(); + HashSet languges = new HashSet(); + languges.Add(firstLanguage); + languges.Add(secondLanguage); + + this.LanguageRepositoryMock.Setup(p => p.GetLanguages()).Returns(new HashSet()); + this.MapperMock.Setup(p => p.Map>(It.IsAny>())).Returns(languges); + + HashSet result = this.LanguageService.GetLanguages(); + + Assert.GreaterOrEqual(2, result.Count, "GetLanguages does not return all languages"); + } + + [Test] + public void GetLanguages_ReturnsEmptyHashSet_IfNoLanguagesExist() + { + this.LanguageRepositoryMock.Setup(p => p.GetLanguages()).Returns(new HashSet()); + this.MapperMock.Setup(p => p.Map>(It.IsAny>())).Returns(new HashSet()); + + HashSet result = this.LanguageService.GetLanguages(); + + Assert.IsEmpty(result, "GetLanguages does not return empty string when no languages exist"); + } + #endregion + + #region UpdateLanguage [Test] [TestCase(true)] [TestCase(false)] @@ -194,7 +227,7 @@ namespace DevHive.Services.Tests } #endregion - #region Delete + #region DeleteLanguage [Test] [TestCase(true)] [TestCase(false)] @@ -225,9 +258,5 @@ namespace DevHive.Services.Tests Assert.AreEqual(exceptionMessage, ex.Message, "Incorecct exception message"); } #endregion - //Task.Run(async () => - //{ - - //}).GetAwaiter().GetResult(); } } -- cgit v1.2.3