KoogleV4/GameHandler.UnitTests/PinPictureTests.cs

54 lines
1.5 KiB
C#

using GameModel;
using GameModel.Exceptions;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace GameHandler.UnitTests
{
[TestFixture]
internal class PinPictureTests
{
[Test]
[TestCase(1,PinState.Down)]
[TestCase(2, PinState.Down)]
[TestCase(3, PinState.Down)]
[TestCase(4, PinState.Down)]
[TestCase(5, PinState.Down)]
[TestCase(6, PinState.Down)]
[TestCase(7, PinState.Down)]
[TestCase(8, PinState.Down)]
[TestCase(9, PinState.Down)]
public void PinPicture_IndexTest(int pinNumber, PinState pinState)
{
var p = new PinPicture();
p[pinNumber] = pinState;
Assert.That(p[pinNumber],Is.EqualTo(PinState.Down));
}
[Test]
[TestCase(0)]
[TestCase(-1)]
[TestCase(10)]
[TestCase(11)]
public void Get_Invalid_PinNumber_ThrowsException(int pinNumber)
{
var p = new PinPicture();
Assert.That(() => p[pinNumber],Throws.TypeOf<InvalidPinIndexException>());
}
[Test]
[TestCase(0)]
[TestCase(-1)]
[TestCase(10)]
[TestCase(11)]
public void Set_Invalid_PinNumber_ThrowsException(int pinNumber)
{
var p = new PinPicture();
Assert.That(() => p[pinNumber] = PinState.Down, Throws.TypeOf<InvalidPinIndexException>());
}
}
}