Esempio n. 1
0
        private async Task SaveBetNumbersList(Bet bet, List <string> numbers)
        {
            if (numbers.Count > 0)
            {
                foreach (string strNumber in numbers)
                {
                    Number number = await AppDbContext.Set <Number>().FirstOrDefaultAsync(x => x.Name.Trim() == strNumber.Trim());

                    if (number == null)
                    {
                        throw new WebApiException(System.Net.HttpStatusCode.Forbidden, $"bet number '{strNumber}' is invalid!");
                    }

                    BetNumber betNumber = new BetNumber
                    {
                        Bet    = bet,
                        Number = number
                    };

                    AppDbContext.Set <BetNumber>().Add(betNumber);
                }

                await AppDbContext.SaveChangesAsync();
            }
        }
        public void BetNumber_Team_Property()
        {
            Team      team = new Team("TES");
            BetNumber bet  = new BetNumber(team, "00");

            Assert.AreEqual(team, bet.team);
        }
        private List <Fork> GetFork(Bet one, Bet two, BetNumber bet1, BetNumber bet2, bool invers = true)
        {
            List <Fork> rezult = new List <Fork>();
            var         coeff1 = one[bet1];
            var         coeff2 = two[bet2];

            if (CheckFork(coeff1, coeff2))
            {
                var fork = CreateFork(one, two, coeff1, coeff2, one.ToMyString(bet1), two.ToMyString(bet2), one.GetData(bet1), two.GetData(bet2));

                rezult.Add(fork);
            }
            if (invers)
            {
                coeff1 = two[bet1];
                coeff2 = one[bet2];

                if (CheckFork(coeff1, coeff2))
                {
                    var fork = CreateFork(two, one, coeff1, coeff2, two.ToMyString(bet1), one.ToMyString(bet2), two.GetData(bet1), one.GetData(bet2));
                    rezult.Add(fork);
                }
            }

            return(rezult);
        }
Esempio n. 4
0
        public void Game_betedTeams_Property()
        {
            var testTeam1 = new Team("A");
            var testTeam2 = new Team("B");

            var bet1 = new BetNumber(testTeam1, "00");
            var bet2 = new BetNumber(testTeam1, "01");
            var bet3 = new BetNumber(testTeam2, "02");

            var game = new Game();

            game.AddBetNumber(bet1);
            game.AddBetNumber(bet2);
            game.AddBetNumber(bet3);

            // The keys are the beted teams
            Assert.AreEqual(2, game.betedTeams.Count());
            Assert.AreEqual(testTeam1, game.betedTeams.First().Key);
            Assert.AreEqual(testTeam2, game.betedTeams.Last().Key);

            // The values are the bets from team key
            var firstTeamBets = game.betedTeams.First().ToList();

            // For the first team, we should have bet1 and bet2
            CollectionAssert.Contains(firstTeamBets, bet1);
            CollectionAssert.Contains(firstTeamBets, bet2);
            CollectionAssert.DoesNotContain(firstTeamBets, bet3);

            // Now For the team 2
            var secondTeamBets = game.betedTeams.Last().ToList();

            CollectionAssert.DoesNotContain(secondTeamBets, bet1);
            CollectionAssert.DoesNotContain(secondTeamBets, bet2);
            CollectionAssert.Contains(secondTeamBets, bet3);
        }
        public void BetNumber_Number_Property()
        {
            Team   team    = new Team("Teste");
            string testNum = "10";

            BetNumber bet = new BetNumber(team, testNum);

            Assert.AreEqual(testNum, bet.number);
        }
Esempio n. 6
0
        public void Game_AddBetNumber()
        {
            var testTeam1 = new Team("A");
            var bet1      = new BetNumber(testTeam1, "00");

            var game = new Game();

            game.AddBetNumber(bet1);

            Assert.AreEqual(bet1, game.bets.First());
            Assert.AreEqual(1, game.bets.Count());
        }
Esempio n. 7
0
        public string ToMystring(BetNumber numb)
        {
            switch (numb)
            {
            case BetNumber._Tmax:
                return("ИTБ(" + Coeff + ")");

            case BetNumber._Tmin:
                return("ИТМ(" + Coeff + ")");

            default:
                return("none");
            }
        }
Esempio n. 8
0
        public void Game_totalBets_Property()
        {
            var testTeam1 = new Team("A");
            var testTeam2 = new Team("B");

            var bet1 = new BetNumber(testTeam1, "00");
            var bet2 = new BetNumber(testTeam1, "01");
            var bet3 = new BetNumber(testTeam2, "02");

            var game = new Game();

            game.AddBetNumber(bet1);
            game.AddBetNumber(bet2);
            game.AddBetNumber(bet3);

            Assert.AreEqual(3, game.totalBets);
        }
Esempio n. 9
0
        public object GetData(BetNumber numb)
        {
            switch (numb)
            {
            case BetNumber._Tmin:
            {
                return(Tmino);
            }

            case BetNumber._Tmax:
            {
                return(Tmaxo);
            }

            default:
                return("error GetData");
            }
        }
Esempio n. 10
0
        private float Iterator(BetNumber numb)
        {
            switch (numb)
            {
            case BetNumber._Tmin:
            {
                return(Tmin);
            }

            case BetNumber._Tmax:
            {
                return(Tmax);
            }

            default:
                return(-1);
            }
        }
Esempio n. 11
0
        public void Game_teams_Property()
        {
            var testTeam1 = new Team("A");
            var testTeam2 = new Team("B");

            var bet1 = new BetNumber(testTeam1, "00");
            var bet2 = new BetNumber(testTeam1, "01");
            var bet3 = new BetNumber(testTeam2, "02");

            var game = new Game();

            game.AddBetNumber(bet1);
            game.AddBetNumber(bet2);
            game.AddBetNumber(bet3);

            Assert.AreEqual(2, game.teams.Count());
            CollectionAssert.Contains(game.teams.ToList(), testTeam1);
            CollectionAssert.Contains(game.teams.ToList(), testTeam2);
        }
Esempio n. 12
0
        private void SetIterator(BetNumber numb, float value)
        {
            switch (numb)
            {
            case BetNumber._Tmin:
            {
                Tmin = value;
                break;
            }

            case BetNumber._Tmax:
            {
                Tmax = value;
                break;
            }

            default:
                return;
            }
        }
Esempio n. 13
0
        public string ToMyString(BetNumber numb)
        {
            switch (numb)
            {
            case BetNumber._1:
                return("1");

            case BetNumber._X:
                return("X");

            case BetNumber._2:
                return("2");

            case BetNumber._1X:
                return("1X");

            case BetNumber._12:
                return("12");

            case BetNumber._X2:
                return("X2");

            case BetNumber._F1:
                return("Ф1(" + _F1_Cof + ")");

            case BetNumber._F2:
                return("Ф2(" + _F2_Cof + ")");

            case BetNumber._Tmax:
                return("Tб(" + _Total_Cof + ")");

            case BetNumber._Tmin:
                return("Тм(" + _Total_Cof + ")");

            default:
                return("none");
            }
        }
Esempio n. 14
0
        //Отдает данные для js скрипта
        public object GetData(BetNumber numb)
        {
            switch (numb)
            {
            case BetNumber._1:
                return(_1o);

            case BetNumber._X:
                return(_Xo);

            case BetNumber._2:
                return(_2o);

            case BetNumber._1X:
                return(_1Xo);

            case BetNumber._12:
                return(_12o);

            case BetNumber._X2:
                return(_X2o);

            case BetNumber._F1:
                return(_F1o);

            case BetNumber._F2:
                return(_F2o);

            case BetNumber._Tmax:
                return(_Tmaxo);

            case BetNumber._Tmin:
                return(_Tmino);

            default:
                return("none");
            }
        }
Esempio n. 15
0
 public float this[BetNumber x]
 {
     get { return(this[(int)x]); }
     set { this[(int)x] = value; }
 }
Esempio n. 16
0
        public void SetData(BetNumber numb, object value)
        {
            switch (numb)
            {
            case BetNumber._1:
            {
                _1o = value;
                break;
            }

            case BetNumber._X:
            {
                _Xo = value;
                break;
            }

            case BetNumber._2:
            {
                _2o = value;
                break;
            }

            case BetNumber._1X:
            {
                _1Xo = value;
                break;
            }

            case BetNumber._12:
            {
                _12o = value;
                break;
            }

            case BetNumber._X2:
            {
                _X2o = value;
                break;
            }

            case BetNumber._F1:
            {
                _F1o = value;
                break;
            }

            case BetNumber._F2:
            {
                _F2o = value;
                break;
            }

            case BetNumber._Tmax:
            {
                _Tmaxo = value;
                break;
            }

            case BetNumber._Tmin:
            {
                _Tmino = value;
                break;
            }

            default:
                throw new ArgumentException("Bet: Betnumber not found");
            }
        }
Esempio n. 17
0
 public float this[BetNumber numb] {
     get { return(Iterator(numb)); } set { SetIterator(numb, value); }
 }