Esempio n. 1
0
        /// <summary>
        /// Deletes the bot ability.
        /// </summary>
        /// <param name="bot">The bot.</param>
        /// <param name="botAbility">The bot ability.</param>
        /// <returns></returns>
        public bool DeleteBotAbility(IBot bot, IBotAbility botAbility)
        {
            var botAssemblyPath = GetBotAbilitySourceAssemplyPath(bot, botAbility);

            if (File.Exists(botAssemblyPath))
            {
                File.Delete(botAssemblyPath);
                InitializeInstance();
                return(true);
            }
            else
            {
                return(false);
            }
        }
Esempio n. 2
0
        public void GetBotAbility_WithAbilities_Ability()
        {
            var target   = new WorldContext();
            var bot1     = MockRepository.GenerateMock <IBot> ();
            var ability1 = MockRepository.GenerateMock <IOneBotAbility>();
            var ability2 = MockRepository.GenerateMock <ITwoBotAbility>();

            target.AddBot(bot1, ability1, ability2);

            IBotAbility actual = target.GetBotAbility <IOneBotAbility> (bot1);

            Assert.AreEqual(ability1, actual);

            actual = target.GetBotAbility <ITwoBotAbility> (bot1);
            Assert.AreEqual(ability2, actual);
        }
Esempio n. 3
0
 private static string GetBotAbilitySourceAssemplyPath(IBot bot, IBotAbility botAbility)
 {
     return(Path.Combine(GetBotAbilitiesSourceDir(bot), botAbility.GetType().Assembly.GetName().Name) + ".dll");
 }
Esempio n. 4
0
        public Type GetBotAbilityInterfaceType(IBotAbility botAbility)
        {
            var botAbilityType = botAbility.GetType();

            return(botAbilityType.GetInterfaces().Where(t => t.GetInterfaces().Count(i => i.Equals(typeof(IBotAbility))) > 0).First());
        }