diff options
| author | Danail Dimitrov <danaildimitrov321@gmail.com> | 2021-01-11 22:17:07 +0200 |
|---|---|---|
| committer | Danail Dimitrov <danaildimitrov321@gmail.com> | 2021-01-11 22:17:07 +0200 |
| commit | 4f838ea0411445f6d7757273515062f2faac1ee7 (patch) | |
| tree | ba6bbd08464e1c84a9b648d33f159dbb1acc3caa /src/DevHive.Tests/DevHive.Services.Tests | |
| parent | 66c18934c0bfe375b906da1b591e8cb02292f85f (diff) | |
| download | DevHive-4f838ea0411445f6d7757273515062f2faac1ee7.tar DevHive-4f838ea0411445f6d7757273515062f2faac1ee7.tar.gz DevHive-4f838ea0411445f6d7757273515062f2faac1ee7.zip | |
Added Interfaces for all repository classes
Diffstat (limited to 'src/DevHive.Tests/DevHive.Services.Tests')
3 files changed, 66 insertions, 18 deletions
diff --git a/src/DevHive.Tests/DevHive.Services.Tests/DevHive.Services.Tests.csproj b/src/DevHive.Tests/DevHive.Services.Tests/DevHive.Services.Tests.csproj index 7cc8473..fb94b61 100644 --- a/src/DevHive.Tests/DevHive.Services.Tests/DevHive.Services.Tests.csproj +++ b/src/DevHive.Tests/DevHive.Services.Tests/DevHive.Services.Tests.csproj @@ -7,6 +7,8 @@ </PropertyGroup> <ItemGroup> + <PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="5.0.1" /> + <PackageReference Include="Moq" Version="4.15.2" /> <PackageReference Include="NUnit" Version="3.13.0" /> <PackageReference Include="NUnit3TestAdapter" Version="3.17.0" /> <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.8.3" /> diff --git a/src/DevHive.Tests/DevHive.Services.Tests/TechnologyService.Tests.cs b/src/DevHive.Tests/DevHive.Services.Tests/TechnologyService.Tests.cs new file mode 100644 index 0000000..d38146f --- /dev/null +++ b/src/DevHive.Tests/DevHive.Services.Tests/TechnologyService.Tests.cs @@ -0,0 +1,64 @@ +using AutoMapper; +using DevHive.Data; +using DevHive.Data.Models; +using DevHive.Data.Repositories; +using DevHive.Data.Repositories.Contracts; +using DevHive.Services.Models.Technology; +using DevHive.Services.Services; +using Microsoft.EntityFrameworkCore; +using Moq; +using NUnit.Framework; +using System.Threading.Tasks; + +namespace DevHive.Services.Tests +{ + [TestFixture] + public class TechnologyServiceTests + { + protected Mock<ITechnologyRepository> TechnologyRepositoryMock { get; set; } + protected Mock<IMapper> MapperMock { get; set; } + protected TechnologyService TechnologyService { get; set; } + + [SetUp] + public void Setup() + { + this.TechnologyRepositoryMock = new Mock<ITechnologyRepository>(); + this.MapperMock = new Mock<IMapper>(); + this.TechnologyService = new TechnologyService(this.TechnologyRepositoryMock.Object, this.MapperMock.Object); + } + + #region Create + [Test] + public void Create_ReturnsTrue_WhenEntityIsAddedSuccessfully() + { + Task.Run(async () => + { + TechnologyServiceModel technologyServiceModel = new TechnologyServiceModel + { + Name = "Some name" + }; + Technology technology = new Technology + { + Name = "Some name" + }; + + this.TechnologyRepositoryMock.Setup(p => p.DoesTechnologyNameExist(It.IsAny<string>())).Returns(Task.FromResult(false)); + this.TechnologyRepositoryMock.Setup(p => p.AddAsync(It.IsAny<Technology>())).Returns(Task.FromResult(true)); + this.MapperMock.Setup(p => p.Map<Technology>(It.IsAny<TechnologyServiceModel>())).Returns(technology); + + bool result = await this.TechnologyService.Create(technologyServiceModel); + + Assert.IsTrue(result, "Create returns false when entity is created successfully"); + }).GetAwaiter().GetResult(); + } + + + #endregion + + [Test] + public void Test() + { + Assert.IsTrue(true); + } + } +} diff --git a/src/DevHive.Tests/DevHive.Services.Tests/UnitTest1.cs b/src/DevHive.Tests/DevHive.Services.Tests/UnitTest1.cs deleted file mode 100644 index b6681da..0000000 --- a/src/DevHive.Tests/DevHive.Services.Tests/UnitTest1.cs +++ /dev/null @@ -1,18 +0,0 @@ -using NUnit.Framework; - -namespace DevHive.Services.Tests -{ - public class Tests - { - [SetUp] - public void Setup() - { - } - - [Test] - public void Test1() - { - Assert.Pass(); - } - } -}
\ No newline at end of file |
