GildedRose-Refactoring-Kata/TestNinja/TestNinja.UnitTests/UnitTests/ReservationTests.cs
2018-11-11 18:50:47 +01:00

66 lines
1.6 KiB
C#

using NUnit.Framework;
using TestNinja.Fundamentals;
namespace TestNinja.UnitTests.UnitTests
{
[TestFixture]
public class ReservationTests
{
[Test]
public void CanBeCancelledBy_AdminCancelling_ReturnsTrue()
{
//Arrange
var reservation = new Reservation();
//Act
var result = reservation.CanBeCancelledBy(new User { IsAdmin = true });
//Assert
Assert.That(result, Is.True);
}
[Test]
public void CanBeCancelledBy_AdminCancelling_ReturnsFalse()
{
//Arrange
var reservation = new Reservation();
//Act
var result = reservation.CanBeCancelledBy(
new User { IsAdmin = false });
//Assert
Assert.IsFalse(result);
Assert.That(result, Is.False);
}
[Test]
public void CanBeCancelledBy_SameUserCancellingTheReservation_ReturnTrue()
{
var user = new User();
var reservation = new Reservation
{
MadeBy = user
};
var result = reservation.CanBeCancelledBy(user);
Assert.IsTrue(result);
}
[Test]
public void CanBeCancelledBy_AnotherUserCancellingTheReservation_ReturnFalse()
{
var user = new User();
var reservation = new Reservation
{
MadeBy = user
};
var result = reservation.CanBeCancelledBy(new User());
Assert.IsFalse(result);
}
}
}