public void GetBotsWithKindOfAbility_AddBots_ListOfAbilities() { var target = new WorldContext(); var bot1 = MockRepository.GenerateMock <IBot> (); var bot2 = MockRepository.GenerateMock <IBot> (); var bot3 = MockRepository.GenerateMock <IBot> (); var ability1 = MockRepository.GenerateMock <IOneBotAbility> (); var ability2 = MockRepository.GenerateMock <ITwoBotAbility> (); var ability3 = MockRepository.GenerateMock <IThreeBotAbility> (); target.AddBot(bot1, ability1, ability2, ability3); target.AddBot(bot2, ability2); target.AddBot(bot3, ability3); var actual = target.GetBotsWithKindOfAbility <IOneBotAbility>(); Assert.AreEqual(1, actual.Length); Assert.AreSame(bot1, actual[0]); actual = target.GetBotsWithKindOfAbility <ITwoBotAbility>(); Assert.AreEqual(2, actual.Length); Assert.AreSame(bot1, actual[0]); Assert.AreSame(bot2, actual[1]); actual = target.GetBotsWithKindOfAbility <IThreeBotAbility>(); Assert.AreEqual(2, actual.Length); Assert.AreSame(bot1, actual[0]); Assert.AreSame(bot3, actual[1]); }
public void AddBot_BotsAndAbilities_Added() { var target = new WorldContext(); var bot1 = MockRepository.GenerateMock <IBot> (); bot1.Expect(b => b.Name).Return("b1"); var ability1 = MockRepository.GenerateMock <IOneBotAbility>(); var bot2 = MockRepository.GenerateMock <IBot> (); bot2.Expect(b => b.Name).Return("b2"); var ability2 = MockRepository.GenerateMock <ITwoBotAbility>(); target.AddBot(bot1, ability1); target.AddBot(bot2, ability2); Assert.AreEqual(2, target.BotsCount); Assert.AreEqual(bot1, target.GetBotsWithKindOfAbility <IOneBotAbility> () [0]); Assert.AreEqual(bot2, target.GetBotsWithKindOfAbility <ITwoBotAbility> () [0]); }
public void GetBotsWithKindOfAbility_NoBots_EmptyList() { var target = new WorldContext(); Assert.AreEqual(0, target.GetBotsWithKindOfAbility <IBotAbility>().Length); }