using System;
using NUnit.Framework;
using RoboDojo.Core.BattleField;
using RoboDojo.War.Combat;
namespace RoboDojo.War.Specs.Combat_BattleMap
{
[TestFixture]
public class When_an_item_is_added : ContextSpecification
{
private BattleMap _battleMap;
private MapFeature _feature;
protected override void SetContext()
{
_battleMap = Mother.CreateAnEmptyBattleMap();
_feature = new MapFeature(0, 0, Guid.NewGuid());
}
protected override void Because()
{
_battleMap.Add(_feature);
}
[Test]
public void it_should_appear_on_the_map()
{
_battleMap.Exists(_feature.ID).ShouldBeTrue();
}
[Test]
public void it_should_be_retrievable_from_the_map()
{
_battleMap.Find(_feature.ID).ID.ShouldEqual(_feature.ID);
}
}
[TestFixture]
public class When_an_item_is_added_2 : AAA
{
private BattleMap _battleMap;
private MapFeature _feature;
protected override void Arrange()
{
_battleMap = Mother.CreateAnEmptyBattleMap();
_feature = new MapFeature(0, 0, Guid.NewGuid());
}
protected override void Act()
{
_battleMap.Add(_feature);
}
[Test]
public void it_should_appear_on_the_map()
{
_battleMap.Exists(_feature.ID).ShouldBeTrue();
}
[Test]
public void it_should_be_retrievable_from_the_map()
{
_battleMap.Find(_feature.ID).ID.ShouldEqual(_feature.ID);
}
}
[TestFixture]
public class When_an_item_is_added_3 : GWT
{
private BattleMap _battleMap;
private MapFeature _feature;
protected override void Given()
{
_battleMap = Mother.CreateAnEmptyBattleMap();
_feature = new MapFeature(0, 0, Guid.NewGuid());
}
protected override void When()
{
_battleMap.Add(_feature);
}
[Test]
public void it_should_appear_on_the_map()
{
_battleMap.Exists(_feature.ID).ShouldBeTrue();
}
[Test]
public void it_should_be_retrievable_from_the_map()
{
_battleMap.Find(_feature.ID).ID.ShouldEqual(_feature.ID);
}
}
}