Esempio n. 1
0
        public void TestDiamondVRating()
        {
            LeagueSummoner summoner = GetSummonerHelper("Diamond", "V", 0);

            int rating = _balancingService.GetRating(summoner);

            rating.Should().Be(2000);
        }
Esempio n. 2
0
        public void TestMasterIRating()
        {
            LeagueSummoner summoner = GetSummonerHelper("Master", "", 0);

            int rating = _balancingService.GetRating(summoner);

            rating.Should().Be(2500);
        }
Esempio n. 3
0
        public void TestSilverVRating()
        {
            LeagueSummoner summoner = GetSummonerHelper("Silver", "V", 0);

            int rating = _balancingService.GetRating(summoner);

            rating.Should().Be(500);
        }
Esempio n. 4
0
        public void TestPlatinumVRating()
        {
            LeagueSummoner summoner = GetSummonerHelper("Platinum", "V", 0);

            int rating = _balancingService.GetRating(summoner);

            rating.Should().Be(1500);
        }
Esempio n. 5
0
        public void TestBronzeVRating()
        {
            LeagueSummoner summoner = GetSummonerHelper("Bronze", "V", 0);

            int rating = _balancingService.GetRating(summoner);

            rating.Should().Be(0);
        }
Esempio n. 6
0
        public void TestUnrankedRating()
        {
            LeagueSummoner summoner = GetSummonerHelper("Unranked", "", 0);

            int rating = _balancingService.GetRating(summoner);

            rating.Should().Be(500);
        }
Esempio n. 7
0
        public void TestLPRating()
        {
            LeagueSummoner summoner = GetSummonerHelper("Challenger", "", 527);

            int rating = _balancingService.GetRating(summoner);

            rating.Should().Be(3027);
        }
Esempio n. 8
0
        public void Under_Level_30_Should_Return_250_Rating()
        {
            LeagueSummoner summoner = new LeagueSummoner()
            {
                Level = 25
            };

            int rating = _balancingService.GetRating(summoner);

            rating.Should().Be(250);
        }
Esempio n. 9
0
        private LeagueSummoner GetSummonerHelper(string tier, string division, int lp)
        {
            LeagueSummoner summoner = new LeagueSummoner
            {
                Tier         = tier,
                Division     = division,
                LeaguePoints = lp,
                Level        = 30
            };

            return(summoner);
        }
Esempio n. 10
0
        public PlayerModel GetPlayer(string playerName)
        {
            LeagueSummoner summoner = _leagueApiService.GetSummoner(playerName);

            return(new PlayerModel()
            {
                Id = (int)summoner.Id,
                Name = summoner.Name,
                Level = summoner.Level,
                Rank = summoner.Tier + " " + summoner.Division,
                Rating = _balancingService.GetRating(summoner),
                Region = "NA",
                Status = "confirmed"
            });
        }
Esempio n. 11
0
        private async Task <Database.Models.Summoner> GetAccount(LeagueSummoner summoner)
        {
            var account = await _gameRepository.GetSummonerById(summoner.SummonerId);

            if (account != null)
            {
                return(account);
            }

            var summonerAccount = await _client.GetAsync <RiotApi.Models.Summoner>($"lol/summoner/v4/summoners/{ summoner.SummonerId }");

            account = _riotModelMapper.MapSummonerToAccount(summonerAccount);
            await _gameRepository.InsertSummoner(account);

            return(account);
        }
Esempio n. 12
0
        public int GetRating(LeagueSummoner summoner)
        {
            if (summoner.Level < 30)
            {
                return(250);
            }

            int rating;

            switch (summoner.Tier)
            {
            case "Bronze":
                rating = 0;
                break;

            case "Silver":
            case "Unranked":
                rating = 500;
                break;

            case "Gold":
                rating = 1000;
                break;

            case "Platinum":
                rating = 1500;
                break;

            case "Diamond":
                rating = 2000;
                break;

            case "Master":
                rating = 2500;
                break;

            case "Challenger":
                rating = 2500;
                break;

            default:
                throw new InvalidOperationException("Unsupported Ranked Tier");
            }

            switch (summoner.Division)
            {
            case "V":
            case "":
                rating += 0;
                break;

            case "IV":
                rating += 100;
                break;

            case "III":
                rating += 200;
                break;

            case "II":
                rating += 300;
                break;

            case "I":
                rating += 400;
                break;

            default:
                throw new InvalidOperationException("Unsupported Ranked Division");
            }

            rating += summoner.LeaguePoints;

            return(rating);
        }