public void CanGetCompTypeInEventCompetition()
        {
            EventCompetition eventCompetition = new EventCompetition();

            eventCompetition.CompType = CompType.Classic;
            Assert.True(eventCompetition.CompType == CompType.Classic);
        }
        public void CanGetLevelInEventCompetition()
        {
            EventCompetition eventCompetition = new EventCompetition();

            eventCompetition.Level = Level.Newcomer;
            Assert.True(eventCompetition.Level == Level.Newcomer);
        }
        /// <summary>
        /// HELPER: uses foreign object contents to build up a Result record
        /// </summary>
        /// <param name="data"> package of foreign objects to de/re-structure </param>
        /// <returns> result record </returns>
        public async Task <Result> BuildResultObject(List <object> data)
        {
            JObject comp        = JObject.Parse(data[0].ToString());
            JObject participant = JObject.Parse(data[1].ToString());
            JObject compreg     = JObject.Parse(data[2].ToString());
            Result  result      = new Result();

            result.CompetitorID = (int)participant["WSC_ID"];
            CompType         a = (CompType)(int)comp["CompType"];
            Level            b = (Level)(int)comp["Level"];
            int              c = (int)compreg["EventID"];
            EventCompetition d = await GetCompetition(a, b, c);

            Competitor e = await GetCompetitor(result.CompetitorID);

            result.EventCompetition   = d;
            result.EventCompetitionID = d.ID;
            result.Role       = (Role)((int)compreg["Role"]);
            result.Competitor = e;
            result.Placement  = (Placement)((int)compreg["Placement"]);
            result.ScoreChief = (int)compreg["ChiefJudgeScore"];
            result.ScoreOne   = (int)compreg["JudgeOneScore"];
            result.ScoreTwo   = (int)compreg["JudgeTwoScore"];
            result.ScoreThree = (int)compreg["JudgeThreeScore"];
            result.ScoreFour  = (int)compreg["JudgeFourScore"];
            result.ScoreFive  = (int)compreg["JudgeFiveScore"];
            result.ScoreSix   = (int)compreg["JudgeSixScore"];
            return(result);
        }
        public void CanGetEventIDInEventCompetition()
        {
            EventCompetition eventCompetition = new EventCompetition();

            eventCompetition.EventID = 1;
            Assert.True(eventCompetition.EventID == 1);
        }
        public IHttpActionResult PutEventCompetition(int id, EventCompetition eventCompetition)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != eventCompetition.Id)
            {
                return(BadRequest());
            }

            db.Entry(eventCompetition).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!EventCompetitionExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
        public void CanGetEventFromEventCompetition()
        {
            EventCompetition eventCompetition = new EventCompetition();
            Event            newEvent         = new Event();

            newEvent.ID            = 1;
            eventCompetition.Event = newEvent;
            Assert.True(eventCompetition.Event.ID == 1);
        }
        public void CanGetEventCompetitionInResult()
        {
            Result           result           = new Result();
            EventCompetition eventCompetition = new EventCompetition();

            eventCompetition.ID     = 1;
            result.EventCompetition = eventCompetition;
            Assert.True(result.EventCompetition.ID == 1);
        }
        public void CanGetResultsFromEventCompetition()
        {
            EventCompetition eventCompetition = new EventCompetition();
            Result           result           = new Result();

            result.CompetitorID = 1;
            List <Result> results = new List <Result>();

            results.Add(result);
            eventCompetition.Results = results;
            Assert.True(eventCompetition.Results.Contains(result));
        }
        public void CanGetEventCompetitionsFromEvent()
        {
            Event            newEvent         = new Event();
            EventCompetition eventCompetition = new EventCompetition();

            eventCompetition.ID = 1;
            List <EventCompetition> eventCompetitions = new List <EventCompetition>();

            eventCompetitions.Add(eventCompetition);
            newEvent.EventCompetitions = eventCompetitions;
            Assert.True(newEvent.EventCompetitions.Contains(eventCompetition));
        }
        public IHttpActionResult PostEventCompetition(EventCompetition eventCompetition)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.EventsCompetition.Add(eventCompetition);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = eventCompetition.Id }, eventCompetition));
        }
        public IHttpActionResult DeleteEventCompetition(int id)
        {
            EventCompetition eventCompetition = db.EventsCompetition.Find(id);

            if (eventCompetition == null)
            {
                return(NotFound());
            }

            db.EventsCompetition.Remove(eventCompetition);
            db.SaveChanges();

            return(Ok(eventCompetition));
        }