Skip to content

Commit

Permalink
Write user service constructor tests
Browse files Browse the repository at this point in the history
  • Loading branch information
cwetanow committed Mar 2, 2017
1 parent 55a1541 commit f4e6ba5
Show file tree
Hide file tree
Showing 2 changed files with 59 additions and 0 deletions.
2 changes: 2 additions & 0 deletions src/Logs.Services.Tests/Logs.Services.Tests.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,8 @@
<Compile Include="LogsServiceTests\GetTopLogsTests.cs" />
<Compile Include="LogsServiceTests\GetTrainingLogByIdTests.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="UserServiceTests\ConstructorTests.cs" />
<Compile Include="UserServiceTests\GetByIdTests.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Logs.Data\Logs.Data.csproj">
Expand Down
57 changes: 57 additions & 0 deletions src/Logs.Services.Tests/UserServiceTests/ConstructorTests.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
using System;
using Logs.Data.Contracts;
using Logs.Models;
using Moq;
using NUnit.Framework;

namespace Logs.Services.Tests.UserServiceTests
{
[TestFixture]
public class ConstructorTests
{
[Test]
public void TestConstructor_PassRepositoryNull_ShouldThrowArgumentNullException()
{
// Arrange
var mockedUnitOfWork = new Mock<IUnitOfWork>();

// Act, Assert
Assert.Throws<ArgumentNullException>(() => new UserService(null, mockedUnitOfWork.Object));
}

[Test]
public void TestConstructor_PassUnitOfWorkNull_ShouldThrowArgumentNullException()
{
// Arrange
var mockedRepository = new Mock<IRepository<User>>();

// Act, Assert
Assert.Throws<ArgumentNullException>(() => new UserService(mockedRepository.Object, null));
}

[Test]
public void TestConstructor_PassEverythingCorrectly_ShouldNotThrow()
{
// Arrange
var mockedRepository = new Mock<IRepository<User>>();
var mockedUnitOfWork = new Mock<IUnitOfWork>();

// Act, Assert
Assert.DoesNotThrow(() => new UserService(mockedRepository.Object, mockedUnitOfWork.Object));
}

[Test]
public void TestConstructor_PassEverythingCorrectly_ShouldInitializeCorrectly()
{
// Arrange
var mockedRepository = new Mock<IRepository<User>>();
var mockedUnitOfWork = new Mock<IUnitOfWork>();

// Act
var service = new UserService(mockedRepository.Object, mockedUnitOfWork.Object);

// Assert
Assert.IsNotNull(service);
}
}
}

0 comments on commit f4e6ba5

Please sign in to comment.