Files
monorepo/LCU.Api.Internal.CoreApiWrapper/LCU.Api.Internal.CoreApiWrapperTest/Controllers/IndividualControllerTest.cs
T
2026-03-31 14:32:23 -05:00

90 lines
3.1 KiB
C#

using System;
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.LcuModels;
using LCU.Library.Internal.CoreApiWrapperModel.LcuModels.Individuals;
namespace LCU.Api.Internal.CoreApiWrapperTest.Controllers
{
public class IndividualControllerTest
{
private IndividualController _individualController;
private Mock<IIndividualService> _mockIndividualService;
[SetUp]
public void SetUp()
{
_mockIndividualService = new Mock<IIndividualService>();
_individualController = new IndividualController(_mockIndividualService.Object);
}
[Test]
public void GetIndividual_OK()
{
var testIndividual = new Individual()
{
IndividualId = 1
};
_mockIndividualService.Setup(x => x.GetIndividualByUserId(It.IsAny<string>())).ReturnsAsync(testIndividual);
var result = _individualController.GetIndividual("1");
Assert.NotNull(result);
var okResult = result as OkObjectResult;
Assert.NotNull(okResult);
Assert.AreEqual(200, okResult.StatusCode);
}
[Test]
public void GetIndividual_EmptyString_BadRequest()
{
var testIndividual = new Individual()
{
IndividualId = 1
};
_mockIndividualService.Setup(x => x.GetIndividualByUserId(It.IsAny<string>())).ReturnsAsync(testIndividual);
var result = _individualController.GetIndividual("");
Assert.NotNull(result);
var badRes = result as BadRequestObjectResult;
Assert.AreEqual(400, badRes.StatusCode);
Assert.AreEqual("User Id must not be null or empty", badRes.Value);
}
[Test]
public void GetIndividual_StringWithSpaces_BadRequest()
{
var testIndividual = new Individual()
{
IndividualId = 1
};
_mockIndividualService.Setup(x => x.GetIndividualByUserId(It.IsAny<string>())).ReturnsAsync(testIndividual);
var result = _individualController.GetIndividual(" ");
Assert.NotNull(result);
var badRes = result as BadRequestObjectResult;
Assert.AreEqual(400, badRes.StatusCode);
Assert.AreEqual("User Id must not be null or empty", badRes.Value);
}
[Test]
public void GetIndividual_Exception()
{
_mockIndividualService.Setup(x => x.GetIndividualByUserId(It.IsAny<string>()))
.Throws(new Exception("Err"));
var result = _individualController.GetIndividual("1");
Assert.NotNull(result);
var badRes = result as BadRequestObjectResult;
Assert.NotNull(badRes);
Assert.AreEqual(400, badRes.StatusCode);
Assert.AreEqual("Err", badRes.Value);
}
}
}