Testing of dices, and merged interfaces to class, and changed methods to properties
This commit is contained in:
parent
0dc4a7b846
commit
37b460b515
@ -1,6 +1,25 @@
|
||||
using pacMan.Game.Items;
|
||||
|
||||
namespace BackendTests.Game.Items;
|
||||
|
||||
public class DiceCupTests
|
||||
{
|
||||
[Test]
|
||||
public void Roll_ReturnsTwoElements()
|
||||
{
|
||||
var diceCup = new DiceCup();
|
||||
var roll = diceCup.Roll;
|
||||
Assert.That(roll, Has.Count.EqualTo(2));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void Roll_ReturnsNumbersInRange1To6()
|
||||
{
|
||||
var diceCup = new DiceCup();
|
||||
var roll = diceCup.Roll;
|
||||
Assert.That(roll[0], Is.GreaterThanOrEqualTo(1));
|
||||
Assert.That(roll[0], Is.LessThanOrEqualTo(6));
|
||||
Assert.That(roll[1], Is.GreaterThanOrEqualTo(1));
|
||||
Assert.That(roll[1], Is.LessThanOrEqualTo(6));
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,15 @@
|
||||
using pacMan.Game.Items;
|
||||
|
||||
namespace BackendTests.Game.Items;
|
||||
|
||||
public class DiceTests
|
||||
{
|
||||
|
||||
[Test]
|
||||
public void Roll_ReturnsNumberBetween1And6()
|
||||
{
|
||||
var dice = new Dice();
|
||||
var roll = dice.Roll;
|
||||
Assert.That(roll, Is.GreaterThanOrEqualTo(1));
|
||||
Assert.That(roll, Is.LessThanOrEqualTo(6));
|
||||
}
|
||||
}
|
||||
|
@ -1,3 +1,6 @@
|
||||
namespace BackendTests.Services;
|
||||
|
||||
public class WebSocketServiceTests { }
|
||||
public class WebSocketServiceTests // TODO: Implement
|
||||
{
|
||||
|
||||
}
|
||||
|
@ -1,6 +0,0 @@
|
||||
namespace pacMan.Game.Interfaces;
|
||||
|
||||
public interface IDice
|
||||
{
|
||||
int Roll();
|
||||
}
|
@ -1,6 +0,0 @@
|
||||
namespace pacMan.Game.Interfaces;
|
||||
|
||||
public interface IDiceCup
|
||||
{
|
||||
List<int> Roll();
|
||||
}
|
@ -1,10 +1,13 @@
|
||||
using pacMan.Game.Interfaces;
|
||||
|
||||
namespace pacMan.Game.Items;
|
||||
|
||||
public interface IDice
|
||||
{
|
||||
int Roll { get; }
|
||||
}
|
||||
|
||||
public class Dice : IDice
|
||||
{
|
||||
private readonly Random _random = new();
|
||||
|
||||
public int Roll() => _random.Next(1, 7);
|
||||
}
|
||||
|
||||
public int Roll => _random.Next(1, 7);
|
||||
}
|
||||
|
@ -1,19 +1,20 @@
|
||||
using pacMan.Game.Interfaces;
|
||||
|
||||
namespace pacMan.Game.Items;
|
||||
|
||||
public interface IDiceCup
|
||||
{
|
||||
List<int> Roll { get; }
|
||||
}
|
||||
|
||||
public class DiceCup : IDiceCup
|
||||
{
|
||||
private readonly List<Dice> _dices;
|
||||
|
||||
public DiceCup()
|
||||
{
|
||||
public DiceCup() =>
|
||||
_dices = new List<Dice>
|
||||
{
|
||||
new(),
|
||||
new()
|
||||
};
|
||||
}
|
||||
|
||||
public List<int> Roll() => _dices.Select(d => d.Roll()).ToList();
|
||||
}
|
||||
public List<int> Roll => _dices.Select(d => d.Roll).ToList();
|
||||
}
|
||||
|
@ -47,7 +47,7 @@ public class ActionService : IActionService
|
||||
|
||||
public List<int> RollDice()
|
||||
{
|
||||
var rolls = _diceCup.Roll();
|
||||
var rolls = _diceCup.Roll;
|
||||
_logger.Log(LogLevel.Information, "Rolled [{}]", string.Join(", ", rolls));
|
||||
|
||||
return rolls;
|
||||
|
Loading…
x
Reference in New Issue
Block a user