@@ -8,6 +8,39 @@ import '../example_data.dart' as eg;
8
8
import 'narrow_checks.dart' ;
9
9
10
10
void main () {
11
+ group ('SendableNarrow' , () {
12
+ test ('stream message' , () {
13
+ final stream = eg.stream ();
14
+ final message = eg.streamMessage (inStream: stream);
15
+ final actual = SendableNarrow .ofMessage (message, selfUserId: eg.selfUser.userId);
16
+ check (actual).equals (TopicNarrow (stream.streamId, message.subject));
17
+ });
18
+
19
+ test ('dm message: self-dm' , () {
20
+ final message = eg.dmMessage (from: eg.selfUser, to: []);
21
+ final actual = SendableNarrow .ofMessage (message, selfUserId: eg.selfUser.userId);
22
+ check (actual).equals (DmNarrow (
23
+ allRecipientIds: [eg.selfUser.userId],
24
+ selfUserId: eg.selfUser.userId));
25
+ });
26
+
27
+ test ('dm message: 1:1' , () {
28
+ final message = eg.dmMessage (from: eg.selfUser, to: [eg.otherUser]);
29
+ final actual = SendableNarrow .ofMessage (message, selfUserId: eg.selfUser.userId);
30
+ check (actual).equals (DmNarrow (
31
+ allRecipientIds: [eg.selfUser.userId, eg.otherUser.userId],
32
+ selfUserId: eg.selfUser.userId));
33
+ });
34
+
35
+ test ('dm message: group' , () {
36
+ final message = eg.dmMessage (from: eg.selfUser, to: [eg.otherUser, eg.thirdUser]);
37
+ final actual = SendableNarrow .ofMessage (message, selfUserId: eg.selfUser.userId);
38
+ check (actual).equals (DmNarrow (
39
+ allRecipientIds: [eg.selfUser.userId, eg.otherUser.userId, eg.thirdUser.userId],
40
+ selfUserId: eg.selfUser.userId));
41
+ });
42
+ });
43
+
11
44
group ('DmNarrow' , () {
12
45
test ('constructor assertions' , () {
13
46
check (() => DmNarrow (allRecipientIds: [2 , 12 ], selfUserId: 2 )).returnsNormally ();
0 commit comments