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 --- .../LanguageService.Tests.cs | 262 --------------------- 1 file changed, 262 deletions(-) delete mode 100644 src/DevHive.Tests/DevHive.Services.Tests/LanguageService.Tests.cs (limited to 'src/DevHive.Tests/DevHive.Services.Tests/LanguageService.Tests.cs') diff --git a/src/DevHive.Tests/DevHive.Services.Tests/LanguageService.Tests.cs b/src/DevHive.Tests/DevHive.Services.Tests/LanguageService.Tests.cs deleted file mode 100644 index 1b59f91..0000000 --- a/src/DevHive.Tests/DevHive.Services.Tests/LanguageService.Tests.cs +++ /dev/null @@ -1,262 +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.Models.Language; -using DevHive.Services.Services; -using Moq; -using NUnit.Framework; - -namespace DevHive.Services.Tests -{ - [TestFixture] - public class LanguageServiceTests - { - private Mock LanguageRepositoryMock { get; set; } - private Mock MapperMock { get; set; } - private LanguageService LanguageService { get; set; } - - #region SetUps - [SetUp] - public void SetUp() - { - this.LanguageRepositoryMock = new Mock(); - this.MapperMock = new Mock(); - this.LanguageService = new LanguageService(this.LanguageRepositoryMock.Object, this.MapperMock.Object); - } - #endregion - - #region CreateLanguage - [Test] - public async Task CreateLanguage_ReturnsNonEmptyGuid_WhenEntityIsAddedSuccessfully() - { - string technologyName = "Gosho Trapov"; - Guid id = Guid.NewGuid(); - CreateLanguageServiceModel createLanguageServiceModel = new CreateLanguageServiceModel - { - Name = technologyName - }; - Language language = new Language - { - Name = technologyName, - Id = id - }; - - this.LanguageRepositoryMock.Setup(p => p.DoesLanguageNameExistAsync(It.IsAny())).Returns(Task.FromResult(false)); - this.LanguageRepositoryMock.Setup(p => p.AddAsync(It.IsAny())).Returns(Task.FromResult(true)); - this.LanguageRepositoryMock.Setup(p => p.GetByNameAsync(It.IsAny())).Returns(Task.FromResult(language)); - this.MapperMock.Setup(p => p.Map(It.IsAny())).Returns(language); - - Guid result = await this.LanguageService.CreateLanguage(createLanguageServiceModel); - - Assert.AreEqual(id, result); - } - - [Test] - public async Task CreateLanguage_ReturnsEmptyGuid_WhenEntityIsNotAddedSuccessfully() - { - string languageName = "Gosho Trapov"; - - CreateLanguageServiceModel createLanguageServiceModel = new CreateLanguageServiceModel - { - Name = languageName - }; - Language language = new Language - { - Name = languageName - }; - - this.LanguageRepositoryMock.Setup(p => p.DoesLanguageNameExistAsync(It.IsAny())).Returns(Task.FromResult(false)); - this.LanguageRepositoryMock.Setup(p => p.AddAsync(It.IsAny())).Returns(Task.FromResult(false)); - this.MapperMock.Setup(p => p.Map(It.IsAny())).Returns(language); - - Guid result = await this.LanguageService.CreateLanguage(createLanguageServiceModel); - - Assert.IsTrue(result == Guid.Empty); - - } - - [Test] - public void CreateLanguage_ThrowsArgumentException_WhenEntityAlreadyExists() - { - string exceptionMessage = "Language already exists!"; - string languageName = "Gosho Trapov"; - - CreateLanguageServiceModel createLanguageServiceModel = new CreateLanguageServiceModel - { - Name = languageName - }; - Language language = new Language - { - Name = languageName - }; - - this.LanguageRepositoryMock.Setup(p => p.DoesLanguageNameExistAsync(It.IsAny())).Returns(Task.FromResult(true)); - - Exception ex = Assert.ThrowsAsync(() => this.LanguageService.CreateLanguage(createLanguageServiceModel)); - - Assert.AreEqual(exceptionMessage, ex.Message, "Incorecct exception message"); - } - #endregion - - #region GetLanguageById - [Test] - public async Task GetLanguageById_ReturnsTheLanguage_WhenItExists() - { - Guid id = new Guid(); - string name = "Gosho Trapov"; - Language language = new Language - { - Name = name - }; - ReadLanguageServiceModel readLanguageServiceModel = new ReadLanguageServiceModel - { - Name = name - }; - - this.LanguageRepositoryMock.Setup(p => p.GetByIdAsync(It.IsAny())).Returns(Task.FromResult(language)); - this.MapperMock.Setup(p => p.Map(It.IsAny())).Returns(readLanguageServiceModel); - - ReadLanguageServiceModel result = await this.LanguageService.GetLanguageById(id); - - Assert.AreEqual(name, result.Name); - } - - [Test] - public void GetLanguageById_ThrowsException_WhenLanguageDoesNotExist() - { - string exceptionMessage = "The language does not exist"; - Guid id = new Guid(); - this.LanguageRepositoryMock.Setup(p => p.GetByIdAsync(It.IsAny())).Returns(Task.FromResult(null)); - - Exception ex = Assert.ThrowsAsync(() => this.LanguageService.GetLanguageById(id)); - - Assert.AreEqual(exceptionMessage, ex.Message, "Incorecct exception message"); - } - #endregion - - #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)] - public async Task UpdateLanguage_ReturnsIfUpdateIsSuccessfull_WhenLanguageExistsy(bool shouldPass) - { - string name = "Gosho Trapov"; - Guid id = Guid.NewGuid(); - Language language = new Language - { - Name = name, - Id = id - }; - UpdateLanguageServiceModel updateLanguageServiceModel = new UpdateLanguageServiceModel - { - Name = name, - }; - - this.LanguageRepositoryMock.Setup(p => p.DoesLanguageExistAsync(It.IsAny())).Returns(Task.FromResult(true)); - this.LanguageRepositoryMock.Setup(p => p.DoesLanguageNameExistAsync(It.IsAny())).Returns(Task.FromResult(false)); - this.LanguageRepositoryMock.Setup(p => p.EditAsync(It.IsAny(), It.IsAny())).Returns(Task.FromResult(shouldPass)); - this.MapperMock.Setup(p => p.Map(It.IsAny())).Returns(language); - - bool result = await this.LanguageService.UpdateLanguage(updateLanguageServiceModel); - - Assert.AreEqual(shouldPass, result); - } - - [Test] - public void UpdateLanguage_ThrowsArgumentException_WhenLanguageDoesNotExist() - { - string exceptionMessage = "Language does not exist!"; - UpdateLanguageServiceModel updateTechnologyServiceModel = new UpdateLanguageServiceModel - { - }; - - this.LanguageRepositoryMock.Setup(p => p.DoesLanguageExistAsync(It.IsAny())).Returns(Task.FromResult(false)); - - Exception ex = Assert.ThrowsAsync(() => this.LanguageService.UpdateLanguage(updateTechnologyServiceModel)); - - Assert.AreEqual(exceptionMessage, ex.Message, "Incorecct exception message"); - } - - [Test] - public void UpdateLanguage_ThrowsException_WhenLanguageNameAlreadyExists() - { - string exceptionMessage = "Language name already exists in our data base!"; - UpdateLanguageServiceModel updateTechnologyServiceModel = new UpdateLanguageServiceModel - { - }; - - this.LanguageRepositoryMock.Setup(p => p.DoesLanguageExistAsync(It.IsAny())).Returns(Task.FromResult(true)); - this.LanguageRepositoryMock.Setup(p => p.DoesLanguageNameExistAsync(It.IsAny())).Returns(Task.FromResult(true)); - - Exception ex = Assert.ThrowsAsync(() => this.LanguageService.UpdateLanguage(updateTechnologyServiceModel)); - - Assert.AreEqual(exceptionMessage, ex.Message, "Incorecct exception message"); - } - #endregion - - #region DeleteLanguage - [Test] - [TestCase(true)] - [TestCase(false)] - public async Task DeleteLanguage_ShouldReturnIfDeletionIsSuccessfull_WhenLanguageExists(bool shouldPass) - { - Guid id = new Guid(); - Language language = new Language(); - - this.LanguageRepositoryMock.Setup(p => p.DoesLanguageExistAsync(It.IsAny())).Returns(Task.FromResult(true)); - this.LanguageRepositoryMock.Setup(p => p.GetByIdAsync(It.IsAny())).Returns(Task.FromResult(language)); - this.LanguageRepositoryMock.Setup(p => p.DeleteAsync(It.IsAny())).Returns(Task.FromResult(shouldPass)); - - bool result = await this.LanguageService.DeleteLanguage(id); - - Assert.AreEqual(shouldPass, result); - } - - [Test] - public void DeleteLanguage_ThrowsException_WhenLanguageDoesNotExist() - { - string exceptionMessage = "Language does not exist!"; - Guid id = new Guid(); - - this.LanguageRepositoryMock.Setup(p => p.DoesLanguageExistAsync(It.IsAny())).Returns(Task.FromResult(false)); - - Exception ex = Assert.ThrowsAsync(() => this.LanguageService.DeleteLanguage(id)); - - Assert.AreEqual(exceptionMessage, ex.Message, "Incorecct exception message"); - } - #endregion - } -} -- cgit v1.2.3