public bool StartDraft(int draftId, bool randomizeSeats) { IDraftRepository dr = new DraftRepository(); IDraftMemberPositionsRepository dmpr = new DraftMemberPositionsRepository(); var draft = dr.GetById(draftId); if (randomizeSeats) { var draftMembers = dmpr.GetMemberPositionsByDraft(draft).ToList(); var rand = new Random(); for (var i = 1; i <= draft.DraftSize; i++) { var randomPlayer = rand.Next(0, draftMembers.Count - 1); var member = draftMembers[randomPlayer].Member; dmpr.UpdatePosition(draft, member, i); draftMembers.RemoveAt(randomPlayer); } } var startingPlayer = dmpr.GetDraftMemberPositionByDraftAndPosition(draft, 1); draft.Started = true; draft.CurrentTurn = startingPlayer.Member; dr.Update(draft); return false; }
public void CanUpdatePlayerPosition() { IDraftMemberPositionsRepository repository = new DraftMemberPositionsRepository(); repository.UpdatePosition(_drafts[0], _members[1], 5); int positionFromDb = repository.GetDraftPosition(_drafts[0], _members[1]); Assert.AreEqual(5, positionFromDb); }