Skip to content

Commit 158f432

Browse files
committed
Add test for PollVoteChangedFeedEvent
1 parent e7e2ab5 commit 158f432

File tree

1 file changed

+56
-1
lines changed

1 file changed

+56
-1
lines changed

packages/stream_feeds/test/resolvers/poll/poll_answer_casted_test.dart

Lines changed: 56 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import 'package:stream_feeds/stream_feeds.dart';
55
import 'package:test/test.dart';
66

77
void main() {
8-
group('pollAnswerCastedFeedEventResolver', () {
8+
group('pollAnswerCastedFeedEventResolver PollVoteCastedFeedEvent', () {
99
test('resolves Answer when answer is true', () {
1010
final event = createPollVoteCastedFeedEvent(isAnswer: true);
1111
final resolvedEvent = pollAnswerCastedFeedEventResolver(event);
@@ -23,6 +23,23 @@ void main() {
2323
expect(resolvedEvent, isNull);
2424
});
2525
});
26+
group('pollAnswerCastedFeedEventResolver PollVoteChangedFeedEvent', () {
27+
test('resolves Answer when answer is true', () {
28+
final event = createPollVoteChangedFeedEvent(isAnswer: true);
29+
final resolvedEvent = pollAnswerCastedFeedEventResolver(event);
30+
expect(resolvedEvent, isA<PollAnswerCastedFeedEvent>());
31+
});
32+
test('does not resolve Answer when answer is false', () {
33+
final event = createPollVoteChangedFeedEvent(isAnswer: false);
34+
final resolvedEvent = pollAnswerCastedFeedEventResolver(event);
35+
expect(resolvedEvent, isNull);
36+
});
37+
test('does not resolve Answer when answer is null', () {
38+
final event = createPollVoteChangedFeedEvent(isAnswer: null);
39+
final resolvedEvent = pollAnswerCastedFeedEventResolver(event);
40+
expect(resolvedEvent, isNull);
41+
});
42+
});
2643
}
2744

2845
PollVoteCastedFeedEvent createPollVoteCastedFeedEvent({bool? isAnswer}) {
@@ -62,3 +79,41 @@ PollVoteCastedFeedEvent createPollVoteCastedFeedEvent({bool? isAnswer}) {
6279
),
6380
);
6481
}
82+
83+
PollVoteChangedFeedEvent createPollVoteChangedFeedEvent({bool? isAnswer}) {
84+
return PollVoteChangedFeedEvent(
85+
createdAt: DateTime.now(),
86+
custom: const {},
87+
fid: '1',
88+
poll: PollResponseData(
89+
createdAt: DateTime.now(),
90+
updatedAt: DateTime.now(),
91+
id: '1',
92+
allowAnswers: true,
93+
allowUserSuggestedOptions: true,
94+
answersCount: 1,
95+
createdById: '1',
96+
custom: const {},
97+
description: '1',
98+
enforceUniqueVote: true,
99+
latestAnswers: const [],
100+
latestVotesByOption: const {},
101+
maxVotesAllowed: 1,
102+
name: '1',
103+
options: const [],
104+
ownVotes: const [],
105+
voteCount: 1,
106+
voteCountsByOption: const {},
107+
votingVisibility: '1',
108+
),
109+
pollVote: PollVoteResponseData(
110+
createdAt: DateTime.now(),
111+
updatedAt: DateTime.now(),
112+
id: '1',
113+
optionId: '1',
114+
pollId: '1',
115+
isAnswer: isAnswer,
116+
),
117+
type: 'poll.vote.changed',
118+
);
119+
}

0 commit comments

Comments
 (0)