129 lines
4.9 KiB
C#
129 lines
4.9 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Threading.Tasks;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using Moq;
|
|
using NUnit.Framework;
|
|
using LCU.Api.Internal.CoreApiWrapper.Controllers;
|
|
using LCU.Api.Internal.CoreApiWrapper.Services;
|
|
using LCU.Library.Internal.CoreApiWrapperModel.CoreModels.CoreRequests;
|
|
using LCU.Library.Internal.CoreApiWrapperModel.CoreModels.AccessChannelPersons;
|
|
using LCU.Library.Internal.CoreApiWrapperModel.CoreModels;
|
|
|
|
namespace LCU.Api.Internal.CoreApiWrapperTest.Controllers
|
|
{
|
|
public class AccessChannelPersonsControllerTest
|
|
{
|
|
private AccessChannelPersonsController _accessChannelPersonsController;
|
|
private Mock<IAccessChannelPersonsService> _mockAccessChannelPersonsService;
|
|
|
|
[SetUp]
|
|
public void SetUp()
|
|
{
|
|
_mockAccessChannelPersonsService = new Mock<IAccessChannelPersonsService>();
|
|
_accessChannelPersonsController = new AccessChannelPersonsController(_mockAccessChannelPersonsService.Object);
|
|
}
|
|
|
|
[Test]
|
|
public async Task GetAccessChannelPersons_OK()
|
|
{
|
|
var response = new List<AccessChannelPerson>()
|
|
{
|
|
new AccessChannelPerson()
|
|
{
|
|
ChannelNumber = 1,
|
|
PersonNumber = 2,
|
|
UserId = "3"
|
|
},
|
|
new AccessChannelPerson()
|
|
{
|
|
ChannelNumber = 4,
|
|
PersonNumber = 25,
|
|
UserId = "6"
|
|
}
|
|
};
|
|
var coreMessageHeader = new CoreMessageHeader(323000000000);
|
|
var coreApiMessage = new CoreApiMessage<IEnumerable<AccessChannelPerson>>(coreMessageHeader, response);
|
|
|
|
_mockAccessChannelPersonsService.Setup(x => x.GetAccessChannelPersonCoreApiResponseAsync(It.IsAny<AccessChannelPersonsByPersonRequest>()))
|
|
.ReturnsAsync(coreApiMessage);
|
|
|
|
var request = new AccessChannelPersonsByPersonRequest()
|
|
{
|
|
PersonNumber = 2
|
|
};
|
|
var results = await _accessChannelPersonsController.Get(request);
|
|
|
|
Assert.NotNull(results);
|
|
var okResult = results as OkObjectResult;
|
|
Assert.NotNull(okResult);
|
|
Assert.AreEqual(200, okResult.StatusCode);
|
|
}
|
|
|
|
[Test]
|
|
public async Task GetAccessChannelPersons_Exception()
|
|
{
|
|
_mockAccessChannelPersonsService.Setup(x => x.GetAccessChannelPersonCoreApiResponseAsync(It.IsAny<AccessChannelPersonsByPersonRequest>()))
|
|
.Throws(new Exception("Oops"));
|
|
|
|
var request = new AccessChannelPersonsByPersonRequest()
|
|
{
|
|
PersonNumber = 2
|
|
};
|
|
var results = await _accessChannelPersonsController.Get(request);
|
|
|
|
Assert.NotNull(results);
|
|
var badRes = results as BadRequestObjectResult;
|
|
Assert.NotNull(badRes);
|
|
Assert.AreEqual(400, badRes.StatusCode);
|
|
}
|
|
|
|
[Test]
|
|
public async Task PutAccessChannelPerson_OK()
|
|
{
|
|
var response = new AccessChannelPerson()
|
|
{
|
|
ChannelNumber = 1,
|
|
PersonNumber = 2,
|
|
UserId = "3"
|
|
};
|
|
_mockAccessChannelPersonsService.Setup(x => x.UpdateAccessChannelPersonAsync(It.IsAny<AccessChannelPerson>(),
|
|
It.IsAny<long>()))
|
|
.ReturnsAsync(response);
|
|
|
|
var request = new AccessChannelPerson()
|
|
{
|
|
ChannelNumber = 1,
|
|
PersonNumber = 2,
|
|
UserId = "3"
|
|
};
|
|
var results = await _accessChannelPersonsController.Put(request, 343432432400000000);
|
|
|
|
Assert.NotNull(results);
|
|
var okResult = results as OkObjectResult;
|
|
Assert.NotNull(okResult);
|
|
Assert.AreEqual(200, okResult.StatusCode);
|
|
}
|
|
|
|
[Test]
|
|
public async Task PutAccessChannelPerson_Exception()
|
|
{
|
|
_mockAccessChannelPersonsService.Setup(x => x.UpdateAccessChannelPersonAsync(It.IsAny<AccessChannelPerson>(),
|
|
It.IsAny<long>()))
|
|
.Throws(new Exception("Oops"));
|
|
|
|
var request = new AccessChannelPerson()
|
|
{
|
|
ChannelNumber = 1,
|
|
PersonNumber = 2,
|
|
UserId = "3"
|
|
};
|
|
var results = await _accessChannelPersonsController.Put(request, 343432432400000000);
|
|
|
|
Assert.NotNull(results);
|
|
var badRes = results as BadRequestObjectResult;
|
|
Assert.NotNull(badRes);
|
|
Assert.AreEqual(400, badRes.StatusCode);
|
|
}
|
|
}
|
|
} |