Ejemplo n.º 1
0
        /// <summary>
        /// List all matches in a tournament.
        /// </summary>
        /// <param name="tournament"></param>
        /// <param name="parameters"></param>
        /// <returns></returns>
        public IList <Match> MatchIndex(Tournament tournament, MatchIndexParameters parameters = null)
        {
            string url   = string.Format("tournaments/{0}/matches", this.TournamentIdentifier(tournament));
            var    param = new Dictionary <string, dynamic>();

            if (parameters != null)
            {
                param = parameters.ToDictionary();
            }

            var json = this.MakeJsonRequest(url, WebRequestMethods.Http.Get, param);

            return(Deserializer.ListOfMatches(json));
        }
Ejemplo n.º 2
0
        public void MatchIndex()
        {
            string tournamentName = "ChallongeNet" + Utilities.RandomName();

            Debug.WriteLine(string.Format("Initializing with name {0}", tournamentName));

            var tournamentUnderTest = this.target.TournamentCreate(tournamentName, TournamentType.SingleElimination, tournamentName);

            var       participantNames     = new HashSet <string>();
            const int NumberOfParticipants = 8;

            while (participantNames.Count < NumberOfParticipants)
            {
                string name = "ChallongeNet" + Utilities.RandomName();
                participantNames.Add(name);
            }

            var participants = participantNames.Select(name => this.target.ParticipantCreate(tournamentUnderTest, new ParticipantCreateParameters {
                Name = name
            })).ToList();

            tournamentUnderTest = this.target.TournamentStart(tournamentUnderTest);

            var participant = participants.First();
            var parameters  = new MatchIndexParameters {
                ParticipantId = participant.Id
            };
            var matches = this.target.MatchIndex(tournamentUnderTest, parameters);
            var m       = matches.Where(match => match.Player1Id == participant.Id || match.Player2Id == participant.Id);

            Assert.AreEqual(1, m.Count());

            parameters = new MatchIndexParameters {
                State = MatchIndexParameters.MatchIndexState.complete
            };
            matches = this.target.MatchIndex(tournamentUnderTest, parameters);
            Assert.AreEqual(0, matches.Count);

            this.target.TournamentDestroy(tournamentUnderTest);
        }