89 lines
3.5 KiB
C#
89 lines
3.5 KiB
C#
using GameModel;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace GameModel.UnitTests
|
|
{
|
|
[TestFixture]
|
|
internal class PinThrowTests
|
|
{
|
|
[Test]
|
|
public void AllNineThrow_IsNotIsNotCircle()
|
|
{
|
|
var pic = new PinPicture(PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down);
|
|
var t = PinThrow.Create(1, pic,false,false);
|
|
|
|
Assert.That(t.IsSink, Is.False);
|
|
Assert.That(t.IsNinePins, Is.True);
|
|
Assert.That(t.IsCircle, Is.False);
|
|
Assert.That(t.IsNoWood, Is.False);
|
|
Assert.That(t.PinCount, Is.EqualTo(9));
|
|
}
|
|
|
|
[Test]
|
|
public void IsCleared_IsFalseWhenAtLeastOnePinIsUp()
|
|
{
|
|
var pic = new PinPicture(PinState.Down, PinState.Down, PinState.Up, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down);
|
|
var t = PinThrow.Create(1, pic, false, true);
|
|
Assert.That(t.IsCleared, Is.False);
|
|
}
|
|
|
|
[Test]
|
|
public void IsCleared_IsTrueWhenAllPinsAreDown()
|
|
{
|
|
var pic = new PinPicture(PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down);
|
|
var t = PinThrow.Create(1, pic, false, false);
|
|
Assert.That(t.IsCleared, Is.True);
|
|
}
|
|
|
|
[Test]
|
|
public void IsCleared_IsFalseWhenAllPinsAreDownButSinkIsTrue()
|
|
{
|
|
var pic = new PinPicture(PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down);
|
|
var t = PinThrow.Create(1, pic, false, true);
|
|
Assert.That(t.IsCleared, Is.False);
|
|
}
|
|
|
|
[Test]
|
|
public void SinkThrow_IsNothing()
|
|
{
|
|
var pic = new PinPicture(PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Down);
|
|
var t = PinThrow.Create(1, pic, false, true);
|
|
|
|
Assert.That(t.IsSink, Is.True);
|
|
Assert.That(t.IsNinePins, Is.False);
|
|
Assert.That(t.IsCircle, Is.False);
|
|
Assert.That(t.IsNoWood, Is.False);
|
|
Assert.That(t.PinCount, Is.EqualTo(0));
|
|
}
|
|
|
|
[Test]
|
|
public void Circle_IsNotAllNine()
|
|
{
|
|
var pic = new PinPicture(PinState.Down, PinState.Down, PinState.Down, PinState.Down, PinState.Up, PinState.Down, PinState.Down, PinState.Down, PinState.Down);
|
|
var t = PinThrow.Create(1, pic, false, false);
|
|
|
|
Assert.That(t.IsSink, Is.False);
|
|
Assert.That(t.IsNinePins, Is.False);
|
|
Assert.That(t.IsCircle, Is.True);
|
|
Assert.That(t.IsNoWood, Is.False);
|
|
Assert.That(t.PinCount, Is.EqualTo(8));
|
|
}
|
|
|
|
[Test]
|
|
public void NoWood_IsNotSink()
|
|
{
|
|
var pic = new PinPicture(PinState.Up, PinState.Up, PinState.Up, PinState.Up, PinState.Up, PinState.Up, PinState.Up, PinState.Up, PinState.Up);
|
|
var t = PinThrow.Create(1, pic, false, false);
|
|
Assert.That(t.IsSink, Is.False);
|
|
Assert.That(t.IsNinePins, Is.False);
|
|
Assert.That(t.IsCircle, Is.False);
|
|
Assert.That(t.IsNoWood, Is.True);
|
|
Assert.That(t.PinCount, Is.EqualTo(0));
|
|
}
|
|
}
|
|
}
|