@@ -126,6 +126,43 @@ void main() {
126
126
// MessageEditState group.
127
127
});
128
128
129
+ group ('TopicName' , () {
130
+ test ('unresolve' , () {
131
+ void doCheck (TopicName input, TopicName expected) {
132
+ final output = input.unresolve ();
133
+ check (output).apiName.equals (expected.apiName);
134
+ }
135
+
136
+ doCheck (eg.t ('some topic' ), eg.t ('some topic' ));
137
+ doCheck (eg.t ('Some Topic' ), eg.t ('Some Topic' ));
138
+ doCheck (eg.t ('✔ some topic' ), eg.t ('some topic' ));
139
+ doCheck (eg.t ('✔ Some Topic' ), eg.t ('Some Topic' ));
140
+
141
+ doCheck (eg.t ('Some ✔ Topic' ), eg.t ('Some ✔ Topic' ));
142
+ doCheck (eg.t ('✔ Some ✔ Topic' ), eg.t ('Some ✔ Topic' ));
143
+
144
+ doCheck (eg.t ('✔ ✔✔✔ some topic' ), eg.t ('some topic' ));
145
+ doCheck (eg.t ('✔ ✔ ✔✔some topic' ), eg.t ('some topic' ));
146
+ });
147
+
148
+ test ('isSameAs' , () {
149
+ void doCheck (TopicName topicA, TopicName topicB, bool expected) {
150
+ check (topicA.isSameAs (topicB)).equals (expected);
151
+ }
152
+
153
+ doCheck (eg.t ('some topic' ), eg.t ('some topic' ), true );
154
+ doCheck (eg.t ('SOME TOPIC' ), eg.t ('SOME TOPIC' ), true );
155
+ doCheck (eg.t ('Some Topic' ), eg.t ('sOME tOPIC' ), true );
156
+ doCheck (eg.t ('✔ a' ), eg.t ('✔ a' ), true );
157
+
158
+ doCheck (eg.t ('✔ some topic' ), eg.t ('some topic' ), false );
159
+ doCheck (eg.t ('SOME TOPIC' ), eg.t ('✔ SOME TOPIC' ), false );
160
+ doCheck (eg.t ('✔ Some Topic' ), eg.t ('sOME tOPIC' ), false );
161
+
162
+ doCheck (eg.t ('✔ a' ), eg.t ('✔ b' ), false );
163
+ });
164
+ });
165
+
129
166
group ('DmMessage' , () {
130
167
final Map <String , dynamic > baseJson = Map .unmodifiable (deepToJson (
131
168
eg.dmMessage (from: eg.otherUser, to: [eg.selfUser]),
0 commit comments