Пример #1
0
        public void Pass_Unit_To_Manager()
        {
            IUnitFactory          unitFactory       = A.MockUnitFactory().Build();
            UnitFactoryController factoryController = new UnitFactoryController(unitFactory);
            IUnit unitToPass = A.MockUnit().Build();

            factoryController.PassUnitToManager(A.MockUnit().Build());

            unitFactory.instanceManager.workers.Contains(unitToPass.selectable);
        }
Пример #2
0
        public void Get_Correct_Index_From_UnitInfoTemplate()
        {
            //Arrange
            List <IUnit> prefabs = new List <IUnit>()
            {
                A.MockUnit().Build(), A.MockUnit().Build(), A.MockUnit().Build()
            };
            int                   numberOfPrefabs   = prefabs.Count;
            IUnitFactory          unitFactory       = A.MockUnitFactory().With(prefabs).Build();
            UnitFactoryController factoryController = new UnitFactoryController(unitFactory);

            //Act + Assert
            foreach (IUnit prefab in prefabs)
            {
                int returnIdx = factoryController.GetIndex(prefab.template);
                Assert.AreEqual(prefabs[returnIdx], prefab);
            }
        }
Пример #3
0
        public void Make_Dictionary()
        {
            //Arrange
            List <IUnit> prefabs = new List <IUnit>()
            {
                A.MockUnit().Build(), A.MockUnit().Build(), A.MockUnit().Build()
            };
            int          numberOfPrefabs = prefabs.Count;
            IUnitFactory unitFactory     = A.MockUnitFactory().With(prefabs).Build();

            UnitFactoryController factoryController = new UnitFactoryController(unitFactory);

            //Act
            factoryController.MakeDictionnary();

            //Assert
            foreach (IUnit prefab in prefabs)
            {
                Assert.IsTrue(factoryController.unitsAvailable.ContainsKey(prefab.template));
            }
        }
Пример #4
0
 private void Awake()
 {
     _factoryController = new UnitFactoryController(this);
     _factoryController.MakeDictionnary();
 }