Exemplo n.º 1
0
        public void EnterFieldTest()
        {
            IBattleField battleField = BattleFieldFactory.CreateBattleField(BattleFieldType.Small);
            IFleet       myfleet     = FleetFactory.CreateFleet(FleetConfigurationType.BalancedShips, BattleStratageyType.WeekShipsFirst);

            myfleet.EnterField(battleField);
            Assert.True(battleField.Fleets.Count() > 0);
        }
        public void AdvanceRoundTest()
        {
            IBattleField battleField = BattleFieldFactory.CreateBattleField(BattleFieldType.Small);
            IFleet       fleet       = FleetFactory.CreateFleet(FleetConfigurationType.BalancedShips, BattleStratageyType.WeekShipsFirst);

            fleet.EnterField(battleField);
            battleField.AdvanceRound(fleet);
            Assert.True(fleet.NumberOfRoundsCompleted == 1);
        }
        public void StartRoundTest()
        {
            IBattleField battleField = BattleFieldFactory.CreateBattleField(BattleFieldType.Small);
            IFleet       fleet1      = FleetFactory.CreateFleet(FleetConfigurationType.BalancedShips, BattleStratageyType.WeekShipsFirst);
            IFleet       fleet2      = FleetFactory.CreateFleet(FleetConfigurationType.BalancedShips, BattleStratageyType.StrongShipsFirst);

            fleet1.EnterField(battleField);
            fleet2.EnterField(battleField);
            foreach (IStarShip ship in fleet2.StarShips)
            {
                ship.Health = 0;
            }
            bool result = battleField.CheckForVictory();

            Assert.True(result);
        }
        public ActionResult Index(Battle battle)
        {
            battle = SessionController.GetSessionOrNewBattle(battle, Session["BattleField"]);

            if (battle.myBattleField == null)
            {
                battle.myBattleField = BattleFieldFactory.CreateBattleField(battle.battleFieldType);
                Session.Add("BattleField", battle.myBattleField);
            }

            if (battle.HasBattleField)
            {
                return(RedirectToRoute("Default", new { controller = "Battle", action = "Index" }));
            }
            return(View(battle));
        }
Exemplo n.º 5
0
        private static IBattleField SetUpBattleField()
        {
            IBattleField battleField = BattleFieldFactory.CreateBattleField(BattleFieldType.Large);
            IFleet       fleet1      = FleetFactory.CreateFleet(FleetConfigurationType.SmallShips, BattleStratageyType.WeekShipsFirst);
            IFleet       fleet2      = FleetFactory.CreateFleet(FleetConfigurationType.BalancedShips, BattleStratageyType.StrongShipsFirst);
            IFleet       fleet3      = FleetFactory.CreateFleet(FleetConfigurationType.HeavyShips, BattleStratageyType.NoPriority);
            IFleet       fleet4      = FleetFactory.CreateFleet(FleetConfigurationType.BalancedShips, BattleStratageyType.WeekShipsFirst);
            IFleet       fleet5      = FleetFactory.CreateFleet(FleetConfigurationType.BalancedShips, BattleStratageyType.NoPriority);
            IFleet       fleet6      = FleetFactory.CreateFleet(FleetConfigurationType.BalancedShips, BattleStratageyType.NoPriority);

            fleet1.EnterField(battleField);
            fleet2.EnterField(battleField);
            fleet3.EnterField(battleField);
            fleet4.EnterField(battleField);
            fleet5.EnterField(battleField);
            fleet6.EnterField(battleField);
            return(battleField);
        }
        public void StartBattleTest()
        {
            IBattleField battleField = BattleFieldFactory.CreateBattleField(BattleFieldType.Large);
            IFleet       fleet1      = FleetFactory.CreateFleet(FleetConfigurationType.SmallShips, BattleStratageyType.WeekShipsFirst);
            IFleet       fleet2      = FleetFactory.CreateFleet(FleetConfigurationType.BalancedShips, BattleStratageyType.StrongShipsFirst);
            IFleet       fleet3      = FleetFactory.CreateFleet(FleetConfigurationType.HeavyShips, BattleStratageyType.NoPriority);
            IFleet       fleet4      = FleetFactory.CreateFleet(FleetConfigurationType.BalancedShips, BattleStratageyType.WeekShipsFirst);
            IFleet       fleet5      = FleetFactory.CreateFleet(FleetConfigurationType.BalancedShips, BattleStratageyType.NoPriority);
            IFleet       fleet6      = FleetFactory.CreateFleet(FleetConfigurationType.BalancedShips, BattleStratageyType.NoPriority);

            fleet1.EnterField(battleField);
            fleet2.EnterField(battleField);
            fleet3.EnterField(battleField);
            fleet4.EnterField(battleField);
            fleet5.EnterField(battleField);
            fleet6.EnterField(battleField);
            battleField.StartBattle();
            Assert.True(battleField.Fleets.Where(x => x.WorkingStarShips.Count() > 0).Count() == 1);
            bool result = battleField.CheckForVictory();

            Assert.True(result);
        }
        public void CreateNullBattleFieldTypeTest()
        {
            IBattleField battleField = BattleFieldFactory.CreateBattleField(null);

            Assert.Equal(null, battleField);
        }
        public void CreateLargeBattleFieldFleetSlotsAvailableTest()
        {
            IBattleField battleField = BattleFieldFactory.CreateBattleField(BattleFieldType.Large);

            Assert.Equal(72000, battleField.NumberOfFleetSlotsAvailable);
        }
        public void CreateMediumBattleFieldFleetSlotsAvailableTest()
        {
            IBattleField battleField = BattleFieldFactory.CreateBattleField(BattleFieldType.Medium);

            Assert.Equal(48000, battleField.NumberOfFleetSlotsAvailable);
        }
        public void CreateSmallBattleFieldFleetSlotAvailableTest()
        {
            IBattleField battleField = BattleFieldFactory.CreateBattleField(BattleFieldType.Small);

            Assert.Equal(24000, battleField.NumberOfFleetSlotsAvailable);
        }