126 lines
5.2 KiB
C#
126 lines
5.2 KiB
C#
using System;
|
|
using System.Linq;
|
|
using System.Collections.Generic;
|
|
using System.Threading.Tasks;
|
|
using NUnit.Framework;
|
|
using Moq;
|
|
using LCU.Library.Internal.CoreApiWrapperModel.CoreModels;
|
|
using LCU.Api.Internal.CoreApiWrapper.Services;
|
|
using LCU.Library.Internal.CoreApiWrapperLib.DataAccess;
|
|
using LCU.Library.Internal.CoreApiWrapperModel.CoreModels.CoreRequests;
|
|
using LCU.Library.Internal.CoreApiWrapperModel.CoreModels.AccessChannelPersons;
|
|
|
|
namespace LCU.Api.Internal.CoreApiWrapperTest.Service
|
|
{
|
|
public class AccessChannelPersonsServiceTest
|
|
{
|
|
private readonly AccessChannelPersonsService _accessChannelPersonsService;
|
|
private readonly Mock<IAccessChannelPersonsDao> _mockAccessChannelPersonsDao;
|
|
|
|
public AccessChannelPersonsServiceTest()
|
|
{
|
|
_mockAccessChannelPersonsDao = new Mock<IAccessChannelPersonsDao>();
|
|
_accessChannelPersonsService = new AccessChannelPersonsService(_mockAccessChannelPersonsDao.Object);
|
|
}
|
|
|
|
[Test]
|
|
public void GetAccessChannelPersonCoreApiResponseAsync_ExceptionThrown()
|
|
{
|
|
_mockAccessChannelPersonsDao.Setup(x => x.FindAccessChannelPersonsByPerson(It.IsAny<CoreRequestParameters>(),
|
|
It.IsAny<AccessChannelPersonsByPersonRequest>()))
|
|
.Throws(new Exception("Oops"));
|
|
|
|
Assert.ThrowsAsync<Exception>(async () =>
|
|
await _accessChannelPersonsService.GetAccessChannelPersonCoreApiResponseAsync(new AccessChannelPersonsByPersonRequest()));
|
|
}
|
|
|
|
[Test]
|
|
public async Task GetAccessChannelPersonCoreApiResponseAsync_UserFieldsReturned()
|
|
{
|
|
var accessChannelPersons = new List<AccessChannelPerson>()
|
|
{
|
|
new AccessChannelPerson()
|
|
{
|
|
ChannelNumber = 1,
|
|
PersonNumber = 2,
|
|
UserId = "3"
|
|
},
|
|
new AccessChannelPerson()
|
|
{
|
|
ChannelNumber = 4,
|
|
PersonNumber = 5,
|
|
UserId = "6"
|
|
}
|
|
};
|
|
var coreMessageheader = new CoreMessageHeader();
|
|
var coreApiResponse = new CoreApiMessage<IEnumerable<AccessChannelPerson>>(coreMessageheader, accessChannelPersons);
|
|
_mockAccessChannelPersonsDao.Setup(x => x.FindAccessChannelPersonsByPerson(It.IsAny<CoreRequestParameters>(),
|
|
It.IsAny<AccessChannelPersonsByPersonRequest>()))
|
|
.ReturnsAsync(coreApiResponse);
|
|
|
|
|
|
var accessChannelPersonsByPersonRequest = new AccessChannelPersonsByPersonRequest();
|
|
|
|
var result = await _accessChannelPersonsService.GetAccessChannelPersonCoreApiResponseAsync(accessChannelPersonsByPersonRequest);
|
|
Assert.NotNull(result);
|
|
Assert.AreEqual(2, result.MessageBody.Count());
|
|
}
|
|
|
|
[Test]
|
|
public void UpdateAccountChannelPersonAsync_ExceptionThrown()
|
|
{
|
|
_mockAccessChannelPersonsDao.Setup(x => x.UpdateAccessChannelPerson(It.IsAny<CoreApiMessage<AccessChannelPerson>>()))
|
|
.Throws(new Exception("Oops"));
|
|
|
|
var request = new AccessChannelPerson()
|
|
{
|
|
ChannelNumber = 1,
|
|
PersonNumber = 2,
|
|
UserId = "3"
|
|
};
|
|
Assert.ThrowsAsync<Exception>(async () =>
|
|
await _accessChannelPersonsService.UpdateAccessChannelPersonAsync(request, 10002312312));
|
|
}
|
|
|
|
[Test]
|
|
public void UpdateAccountChannelPersonAsync_NullResult_ExceptionThrown()
|
|
{
|
|
AccessChannelPerson response = null;
|
|
_mockAccessChannelPersonsDao.Setup(x => x.UpdateAccessChannelPerson(It.IsAny<CoreApiMessage<AccessChannelPerson>>()))
|
|
.ReturnsAsync(response);
|
|
|
|
var request = new AccessChannelPerson()
|
|
{
|
|
ChannelNumber = 1,
|
|
PersonNumber = 2,
|
|
UserId = "3"
|
|
};
|
|
Assert.ThrowsAsync<Exception>(async () =>
|
|
await _accessChannelPersonsService.UpdateAccessChannelPersonAsync(request, 10002312312));
|
|
}
|
|
|
|
[Test]
|
|
public async Task UpdateAccountChannelPersonAsync_UpdatedUserFieldsReturned()
|
|
{
|
|
var response = new AccessChannelPerson()
|
|
{
|
|
ChannelNumber = 1,
|
|
PersonNumber = 2,
|
|
UserId = "3"
|
|
};
|
|
_mockAccessChannelPersonsDao.Setup(x => x.UpdateAccessChannelPerson(It.IsAny<CoreApiMessage<AccessChannelPerson>>()))
|
|
.ReturnsAsync(response);
|
|
|
|
var request = new AccessChannelPerson()
|
|
{
|
|
ChannelNumber = 1,
|
|
PersonNumber = 2,
|
|
UserId = "3"
|
|
};
|
|
var result = await _accessChannelPersonsService.UpdateAccessChannelPersonAsync(request, 10002312312);
|
|
Assert.NotNull(result);
|
|
Assert.AreEqual(response, result);
|
|
}
|
|
}
|
|
}
|