public void Factory_creates_destroyer_with_valid_starting_position() { var factory = new DestroyerFactory(new DeterministicModuloRandomNumberGenerator()); var startingPosition = new Position(3, 3); var ship = factory.CreateAt(startingPosition); Assert.That(ship.StartPosition, Is.EqualTo(startingPosition)); }
public void Factory_creates_valid_horizontal_destroyer() { var randomNumberGenerator = new DeterministicModuloRandomNumberGenerator(); var factory = new DestroyerFactory(randomNumberGenerator); var ship = factory.CreateAt(new Position(3, 3)); var expectedPositions = new[] { new Position(3, 3), new Position(4, 3), new Position(5, 3), new Position(6, 3), }; Assert.That(ship.Positions, Has.Exactly(4).Items); Assert.That(ship.Positions, Is.EquivalentTo(expectedPositions)); }