public void NoXTokenGuidHeader_Response_Choices_ContainsVoteValueZero() { const int choiceId = 42; var choice = new Choice() { Id = choiceId, Name = "A choice", Description = "Some description", PollChoiceNumber = 13 }; Poll poll = CreateNonInviteOnlyPoll(); poll.Choices.Add(choice); IDbSet <Poll> polls = DbSetTestHelper.CreateMockDbSet <Poll>(); polls.Add(poll); IDbSet <Choice> choices = DbSetTestHelper.CreateMockDbSet <Choice>(); choices.Add(choice); IContextFactory contextFactory = ContextFactoryTestHelper.CreateContextFactory(polls, choices); PollController controller = CreatePollController(contextFactory); PollRequestResponseModel response = controller.Get(PollId); PollRequestChoiceResponseModel responseChoice = response.Choices.Single(); Assert.AreEqual(0, responseChoice.VoteValue); }
public void NonInviteOnly_XTokenGuidHeader_ReturnsHeaderValueAsTokenGuid() { IDbSet <Poll> polls = DbSetTestHelper.CreateMockDbSet <Poll>(); IDbSet <Ballot> ballots = DbSetTestHelper.CreateMockDbSet <Ballot>(); var ballot = new Ballot() { TokenGuid = TokenGuid }; Poll nonInviteOnlyPoll = CreateNonInviteOnlyPoll(); nonInviteOnlyPoll.Ballots.Add(ballot); ballots.Add(ballot); polls.Add(nonInviteOnlyPoll); IContextFactory contextFactory = ContextFactoryTestHelper.CreateContextFactory(polls); PollController controller = CreatePollController(contextFactory); AddXTokenGuidHeader(controller, TokenGuid); PollRequestResponseModel response = controller.Get(PollId); Assert.AreEqual(TokenGuid, response.TokenGuid); }
public void InviteOnly_XTokenGuidHeader_BallotInPoll_ReturnsPoll() { const string pollName = "Why are we here?"; const PollType pollType = PollType.UpDown; var ballot = new Ballot() { TokenGuid = TokenGuid }; var poll = new Poll() { UUID = PollId, Name = pollName, PollType = pollType, MaxPoints = 5, MaxPerVote = 1, ExpiryDateUtc = null, NamedVoting = false, ChoiceAdding = false, InviteOnly = true }; poll.Ballots.Add(ballot); IDbSet <Poll> polls = DbSetTestHelper.CreateMockDbSet <Poll>(); polls.Add(poll); IDbSet <Ballot> ballots = DbSetTestHelper.CreateMockDbSet <Ballot>(); ballots.Add(ballot); IContextFactory contextFactory = ContextFactoryTestHelper.CreateContextFactory(polls, ballots); PollController controller = CreatePollController(contextFactory); AddXTokenGuidHeader(controller, TokenGuid); PollRequestResponseModel response = controller.Get(PollId); Assert.AreEqual(pollName, response.Name); Assert.AreEqual(pollType.ToString(), response.PollType); Assert.IsNull(response.ExpiryDateUtc); Assert.AreEqual(5, response.MaxPoints); Assert.AreEqual(1, response.MaxPerVote); Assert.IsFalse(response.NamedVoting); Assert.IsFalse(response.ChoiceAdding); Assert.IsFalse(response.UserHasVoted); }
public void XTokenGuidHeader_Response_Choices_ContainsVoteValuesForBallot() { const int choiceId = 42; var choice = new Choice() { Id = choiceId, Name = "A choice", Description = "Some description", PollChoiceNumber = 13 }; var vote = new Vote() { Choice = choice, VoteValue = 3 }; var ballot = new Ballot() { TokenGuid = TokenGuid }; ballot.Votes.Add(vote); Poll poll = CreateNonInviteOnlyPoll(); poll.Ballots.Add(ballot); poll.Choices.Add(choice); IDbSet <Poll> polls = DbSetTestHelper.CreateMockDbSet <Poll>(); polls.Add(poll); IDbSet <Choice> choices = DbSetTestHelper.CreateMockDbSet <Choice>(); choices.Add(choice); IDbSet <Vote> votes = DbSetTestHelper.CreateMockDbSet <Vote>(); votes.Add(vote); IDbSet <Ballot> ballots = DbSetTestHelper.CreateMockDbSet <Ballot>(); ballots.Add(ballot); IContextFactory contextFactory = ContextFactoryTestHelper.CreateContextFactory(polls, ballots, votes, choices); PollController controller = CreatePollController(contextFactory); AddXTokenGuidHeader(controller, TokenGuid); PollRequestResponseModel response = controller.Get(PollId); PollRequestChoiceResponseModel responseChoice = response.Choices.Single(); Assert.AreEqual(3, responseChoice.VoteValue); }
public void NonInviteOnly_NoXTokenGuidHeader_ReturnsNonEmptyTokenGuid() { IDbSet <Poll> polls = DbSetTestHelper.CreateMockDbSet <Poll>(); polls.Add(new Poll() { UUID = PollId }); IContextFactory contextFactory = ContextFactoryTestHelper.CreateContextFactory(polls); PollController controller = CreatePollController(contextFactory); PollRequestResponseModel response = controller.Get(PollId); Assert.AreNotEqual(Guid.Empty, response.TokenGuid); }
public void ElectionPoll_BallotHasVoted_UserHasVotedIsTrue() { const string pollName = "Why are we here?"; const PollType pollType = PollType.Basic; var ballot = new Ballot() { TokenGuid = TokenGuid, HasVoted = true }; var poll = new Poll() { UUID = PollId, Name = pollName, PollType = pollType, ExpiryDateUtc = null, NamedVoting = false, ChoiceAdding = false, InviteOnly = true }; poll.Ballots.Add(ballot); IDbSet <Poll> polls = DbSetTestHelper.CreateMockDbSet <Poll>(); polls.Add(poll); IDbSet <Ballot> ballots = DbSetTestHelper.CreateMockDbSet <Ballot>(); ballots.Add(ballot); IContextFactory contextFactory = ContextFactoryTestHelper.CreateContextFactory(polls, ballots); PollController controller = CreatePollController(contextFactory); AddXTokenGuidHeader(controller, TokenGuid); PollRequestResponseModel response = controller.Get(PollId); Assert.IsTrue(response.UserHasVoted); }