mirror of
https://github.com/vector-im/element-web.git
synced 2024-11-25 09:58:11 +08:00
1c6b06bb58
* wip * remove dupe * use poll model relations in all cases * update mpollbody tests to use poll instance * update poll fetching login in pinned messages card * add pinned polls to room polls state * add spinner while relations are still loading * handle no poll in end poll dialog * strict errors * render a poll body that errors for poll end events * add fetching logic to pollend tile * extract poll testing utilities * test mpollend * strict fix * more strict fix * strict fix for forwardref * add filter component * update poll test utils * add unstyled filter tab group * filtertabgroup snapshot * lint * update test util setupRoomWithPollEvents to allow testing multiple polls in one room * style filter tabs * test error message for past polls * sort polls list by latest * extract poll option display components * strict fixes
1667 lines
39 KiB
Plaintext
1667 lines
39 KiB
Plaintext
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
|
|
exports[`MPollBody renders a finished poll 1`] = `
|
|
<div>
|
|
<div
|
|
class="mx_MPollBody"
|
|
>
|
|
<h2
|
|
data-testid="pollQuestion"
|
|
>
|
|
What should we order for the party?
|
|
</h2>
|
|
<div
|
|
class="mx_MPollBody_allOptions"
|
|
>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_ended"
|
|
data-testid="pollOption-pizza"
|
|
>
|
|
<div
|
|
class="mx_PollOption_endedOption"
|
|
data-value="pizza"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Pizza
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
0 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_ended"
|
|
data-testid="pollOption-poutine"
|
|
>
|
|
<div
|
|
class="mx_PollOption_endedOption"
|
|
data-value="poutine"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Poutine
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
0 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_checked mx_PollOption_ended"
|
|
data-testid="pollOption-italian"
|
|
>
|
|
<div
|
|
class="mx_PollOption_endedOption mx_PollOption_endedOptionWinner"
|
|
data-value="italian"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Italian
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
<div
|
|
class="mx_PollOption_winnerIcon"
|
|
/>
|
|
2 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 67%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_ended"
|
|
data-testid="pollOption-wings"
|
|
>
|
|
<div
|
|
class="mx_PollOption_endedOption"
|
|
data-value="wings"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Wings
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
1 vote
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 33%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_MPollBody_totalVotes"
|
|
data-testid="totalVotes"
|
|
>
|
|
Final result based on 3 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
`;
|
|
|
|
exports[`MPollBody renders a finished poll with multiple winners 1`] = `
|
|
<div>
|
|
<div
|
|
class="mx_MPollBody"
|
|
>
|
|
<h2
|
|
data-testid="pollQuestion"
|
|
>
|
|
What should we order for the party?
|
|
</h2>
|
|
<div
|
|
class="mx_MPollBody_allOptions"
|
|
>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_checked mx_PollOption_ended"
|
|
data-testid="pollOption-pizza"
|
|
>
|
|
<div
|
|
class="mx_PollOption_endedOption mx_PollOption_endedOptionWinner"
|
|
data-value="pizza"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Pizza
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
<div
|
|
class="mx_PollOption_winnerIcon"
|
|
/>
|
|
2 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 50%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_ended"
|
|
data-testid="pollOption-poutine"
|
|
>
|
|
<div
|
|
class="mx_PollOption_endedOption"
|
|
data-value="poutine"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Poutine
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
0 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_ended"
|
|
data-testid="pollOption-italian"
|
|
>
|
|
<div
|
|
class="mx_PollOption_endedOption"
|
|
data-value="italian"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Italian
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
0 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_checked mx_PollOption_ended"
|
|
data-testid="pollOption-wings"
|
|
>
|
|
<div
|
|
class="mx_PollOption_endedOption mx_PollOption_endedOptionWinner"
|
|
data-value="wings"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Wings
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
<div
|
|
class="mx_PollOption_winnerIcon"
|
|
/>
|
|
2 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 50%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_MPollBody_totalVotes"
|
|
data-testid="totalVotes"
|
|
>
|
|
Final result based on 4 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
`;
|
|
|
|
exports[`MPollBody renders a finished poll with no votes 1`] = `
|
|
<div>
|
|
<div
|
|
class="mx_MPollBody"
|
|
>
|
|
<h2
|
|
data-testid="pollQuestion"
|
|
>
|
|
What should we order for the party?
|
|
</h2>
|
|
<div
|
|
class="mx_MPollBody_allOptions"
|
|
>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_ended"
|
|
data-testid="pollOption-pizza"
|
|
>
|
|
<div
|
|
class="mx_PollOption_endedOption"
|
|
data-value="pizza"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Pizza
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
0 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_ended"
|
|
data-testid="pollOption-poutine"
|
|
>
|
|
<div
|
|
class="mx_PollOption_endedOption"
|
|
data-value="poutine"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Poutine
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
0 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_ended"
|
|
data-testid="pollOption-italian"
|
|
>
|
|
<div
|
|
class="mx_PollOption_endedOption"
|
|
data-value="italian"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Italian
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
0 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_ended"
|
|
data-testid="pollOption-wings"
|
|
>
|
|
<div
|
|
class="mx_PollOption_endedOption"
|
|
data-value="wings"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Wings
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
0 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_MPollBody_totalVotes"
|
|
data-testid="totalVotes"
|
|
>
|
|
Final result based on 0 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
`;
|
|
|
|
exports[`MPollBody renders a loader while responses are still loading 1`] = `"Based on 4 votes<div class="mx_Spinner"><div class="mx_Spinner_icon" style="width: 16px; height: 16px;" aria-label="Loading..." role="progressbar" data-testid="spinner"></div></div>"`;
|
|
|
|
exports[`MPollBody renders a poll that I have not voted in 1`] = `
|
|
<div>
|
|
<div
|
|
class="mx_MPollBody"
|
|
>
|
|
<h2
|
|
data-testid="pollQuestion"
|
|
>
|
|
What should we order for the party?
|
|
</h2>
|
|
<div
|
|
class="mx_MPollBody_allOptions"
|
|
>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-pizza"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="pizza"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Pizza
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-poutine"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="poutine"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Poutine
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-italian"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="italian"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Italian
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-wings"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="wings"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Wings
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_MPollBody_totalVotes"
|
|
data-testid="totalVotes"
|
|
>
|
|
3 votes cast. Vote to see the results
|
|
</div>
|
|
</div>
|
|
</div>
|
|
`;
|
|
|
|
exports[`MPollBody renders a poll with local, non-local and invalid votes 1`] = `
|
|
<div>
|
|
<div
|
|
class="mx_MPollBody"
|
|
>
|
|
<h2
|
|
data-testid="pollQuestion"
|
|
>
|
|
What should we order for the party?
|
|
</h2>
|
|
<div
|
|
class="mx_MPollBody_allOptions"
|
|
>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-pizza"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="pizza"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Pizza
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
1 vote
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 20%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-poutine"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="poutine"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Poutine
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
0 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_checked"
|
|
data-testid="pollOption-italian"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled mx_StyledRadioButton_checked"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="italian"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Italian
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
3 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 60%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-wings"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="wings"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Wings
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
1 vote
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 20%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_MPollBody_totalVotes"
|
|
data-testid="totalVotes"
|
|
>
|
|
Based on 5 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
`;
|
|
|
|
exports[`MPollBody renders a poll with no votes 1`] = `
|
|
<div>
|
|
<div
|
|
class="mx_MPollBody"
|
|
>
|
|
<h2
|
|
data-testid="pollQuestion"
|
|
>
|
|
What should we order for the party?
|
|
</h2>
|
|
<div
|
|
class="mx_MPollBody_allOptions"
|
|
>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-pizza"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="pizza"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Pizza
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-poutine"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="poutine"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Poutine
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-italian"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="italian"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Italian
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-wings"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="wings"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Wings
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_MPollBody_totalVotes"
|
|
data-testid="totalVotes"
|
|
>
|
|
No votes cast
|
|
</div>
|
|
</div>
|
|
</div>
|
|
`;
|
|
|
|
exports[`MPollBody renders a poll with only non-local votes 1`] = `
|
|
<div>
|
|
<div
|
|
class="mx_MPollBody"
|
|
>
|
|
<h2
|
|
data-testid="pollQuestion"
|
|
>
|
|
What should we order for the party?
|
|
</h2>
|
|
<div
|
|
class="mx_MPollBody_allOptions"
|
|
>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-pizza"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="pizza"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Pizza
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
0 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-poutine"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="poutine"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Poutine
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
0 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-italian"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="italian"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Italian
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
2 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 67%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_checked"
|
|
data-testid="pollOption-wings"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled mx_StyledRadioButton_checked"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="wings"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Wings
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
1 vote
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 33%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_MPollBody_totalVotes"
|
|
data-testid="totalVotes"
|
|
>
|
|
Based on 3 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
`;
|
|
|
|
exports[`MPollBody renders an undisclosed, finished poll 1`] = `
|
|
<div>
|
|
<div
|
|
class="mx_MPollBody"
|
|
>
|
|
<h2
|
|
data-testid="pollQuestion"
|
|
>
|
|
What should we order for the party?
|
|
</h2>
|
|
<div
|
|
class="mx_MPollBody_allOptions"
|
|
>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_checked mx_PollOption_ended"
|
|
data-testid="pollOption-pizza"
|
|
>
|
|
<div
|
|
class="mx_PollOption_endedOption mx_PollOption_endedOptionWinner"
|
|
data-value="pizza"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Pizza
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
<div
|
|
class="mx_PollOption_winnerIcon"
|
|
/>
|
|
2 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 50%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_ended"
|
|
data-testid="pollOption-poutine"
|
|
>
|
|
<div
|
|
class="mx_PollOption_endedOption"
|
|
data-value="poutine"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Poutine
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
0 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_ended"
|
|
data-testid="pollOption-italian"
|
|
>
|
|
<div
|
|
class="mx_PollOption_endedOption"
|
|
data-value="italian"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Italian
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
0 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption mx_PollOption_checked mx_PollOption_ended"
|
|
data-testid="pollOption-wings"
|
|
>
|
|
<div
|
|
class="mx_PollOption_endedOption mx_PollOption_endedOptionWinner"
|
|
data-value="wings"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Wings
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
<div
|
|
class="mx_PollOption_winnerIcon"
|
|
/>
|
|
2 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 50%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_MPollBody_totalVotes"
|
|
data-testid="totalVotes"
|
|
>
|
|
Final result based on 4 votes
|
|
</div>
|
|
</div>
|
|
</div>
|
|
`;
|
|
|
|
exports[`MPollBody renders an undisclosed, unfinished poll 1`] = `
|
|
<div>
|
|
<div
|
|
class="mx_MPollBody"
|
|
>
|
|
<h2
|
|
data-testid="pollQuestion"
|
|
>
|
|
What should we order for the party?
|
|
</h2>
|
|
<div
|
|
class="mx_MPollBody_allOptions"
|
|
>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-pizza"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="pizza"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Pizza
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-poutine"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="poutine"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Poutine
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-italian"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="italian"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Italian
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_PollOption"
|
|
data-testid="pollOption-wings"
|
|
>
|
|
<label
|
|
class="mx_StyledRadioButton mx_PollOption_live-option mx_StyledRadioButton_enabled"
|
|
>
|
|
<input
|
|
name="poll_answer_select-$mypoll"
|
|
type="radio"
|
|
value="wings"
|
|
/>
|
|
<div>
|
|
<div />
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_content"
|
|
>
|
|
<div
|
|
class="mx_PollOption_optionText"
|
|
>
|
|
Wings
|
|
</div>
|
|
<div
|
|
class="mx_PollOption_optionVoteCount"
|
|
>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_StyledRadioButton_spacer"
|
|
/>
|
|
</label>
|
|
<div
|
|
class="mx_PollOption_popularityBackground"
|
|
>
|
|
<div
|
|
class="mx_PollOption_popularityAmount"
|
|
style="width: 0%;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="mx_MPollBody_totalVotes"
|
|
data-testid="totalVotes"
|
|
>
|
|
Results will be visible when the poll is ended
|
|
</div>
|
|
</div>
|
|
</div>
|
|
`;
|