You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
LOLProject/Sources/TestUnitaire/UnitTestRune.cs

108 lines
2.9 KiB

using APILOL.Controllers.Request;
using APILOL.Controllers.v1;
using DTO;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Logging.Abstractions;
using Model;
using StubLib;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace TestUnitaire
{
[TestClass]
public class UnitTestRune
{
[TestClass]
public class RuneControllerTest
{
private readonly StubData stub;
private readonly RuneController runesStub;
public RuneControllerTest()
{
stub = new StubData();
runesStub = new RuneController(stub, new NullLogger<RuneController>());
}
[TestMethod]
public async Task TestGetRunes()
{
//Arrange
//Act
var total = await stub.RunesMgr.GetNbItems();
var rune = await runesStub.Get(new PageRequest() { Offset = 0, Limit = 2 });
//Assert
var objectResult = rune as OkObjectResult;
Assert.IsNotNull(objectResult);
}
[TestMethod]
public async Task TestPostRune()
{
//Arange
var RuneDTO = new RuneDTO { Description = "aze",Name="zz", Image="ee", Family= RuneFamily.Precision };
//Act
var runesResult = await runesStub.Post(RuneDTO);
//Assert
var objectResult = runesResult as CreatedAtActionResult;
Assert.IsNotNull(objectResult);
var runes = objectResult?.Value as RuneDTO;
Assert.IsNotNull(runes);
Assert.AreEqual("zz", runes.Name);
Assert.AreEqual("aze", runes.Description);
Assert.AreEqual("ee", runes.Image);
}
[TestMethod]
public async Task TestPutRune()
{
//Arange
var RuneDTO = new RuneDTO { Description = "aze", Name = "zz", Image = "ee", Family = RuneFamily.Precision };
//Act
var runesResult = await runesStub.PutAsync(RuneDTO.Name, RuneDTO);
//Assert
var objectResult = runesResult as OkObjectResult;
Assert.IsNull(objectResult);
}
[TestMethod]
public async Task TestDeleteRune()
{
//Act
var total = await stub.RunesMgr.GetNbItems();
var runesResult = await runesStub.Delete("Conqueror");
//Assert
var objectResult = runesResult as OkObjectResult;
Assert.IsNotNull(objectResult);
Assert.AreNotEqual(await stub.RunesMgr.GetNbItems(), total);
}
}
}
}