aboutsummaryrefslogtreecommitdiff
path: root/src/DevHive.Tests/DevHive.Services.Tests/TechnologyService.Tests.cs
diff options
context:
space:
mode:
authorDanail Dimitrov <danaildimitrov321@gmail.com>2021-01-11 22:17:07 +0200
committerDanail Dimitrov <danaildimitrov321@gmail.com>2021-01-11 22:17:07 +0200
commit4f838ea0411445f6d7757273515062f2faac1ee7 (patch)
treeba6bbd08464e1c84a9b648d33f159dbb1acc3caa /src/DevHive.Tests/DevHive.Services.Tests/TechnologyService.Tests.cs
parent66c18934c0bfe375b906da1b591e8cb02292f85f (diff)
downloadDevHive-4f838ea0411445f6d7757273515062f2faac1ee7.tar
DevHive-4f838ea0411445f6d7757273515062f2faac1ee7.tar.gz
DevHive-4f838ea0411445f6d7757273515062f2faac1ee7.zip
Added Interfaces for all repository classes
Diffstat (limited to 'src/DevHive.Tests/DevHive.Services.Tests/TechnologyService.Tests.cs')
-rw-r--r--src/DevHive.Tests/DevHive.Services.Tests/TechnologyService.Tests.cs64
1 files changed, 64 insertions, 0 deletions
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);
+ }
+ }
+}