@@ -1122,6 +1122,87 @@ void main() {
1122
1122
});
1123
1123
});
1124
1124
});
1125
+ group ('of MapEntry' , () {
1126
+ group ('.whereKey' , () {
1127
+ test ('empty' , () {
1128
+ expect (< String , int > {}.entries.whereKey (unreachable), isEmpty);
1129
+ });
1130
+ test ('single' , () {
1131
+ expect ({'a' : 1 }.entries.whereKey ((k) => k == 'a' ).toMap (), {'a' : 1 });
1132
+ expect ({'a' : 1 }.entries.whereKey ((k) => k == 'b' ).toMap (), isEmpty);
1133
+ });
1134
+ test ('multiple' , () {
1135
+ expect (
1136
+ {'a' : 1 , 'b' : 2 }.entries.whereKey ((k) => k == 'a' ).toMap (),
1137
+ {'a' : 1 },
1138
+ );
1139
+ expect (
1140
+ {'a' : 1 , 'b' : 2 }.entries.whereKey ((k) => k == 'b' ).toMap (),
1141
+ {'b' : 2 },
1142
+ );
1143
+ expect (
1144
+ {'a' : 1 , 'b' : 2 }.entries.whereKey ((k) => k != 'c' ).toMap (),
1145
+ {'a' : 1 , 'b' : 2 },
1146
+ );
1147
+ });
1148
+ });
1149
+ group ('.whereValue' , () {
1150
+ test ('empty' , () {
1151
+ expect (< String , int > {}.entries.whereValue (unreachable), isEmpty);
1152
+ });
1153
+ test ('single' , () {
1154
+ expect ({'a' : 1 }.entries.whereValue ((v) => v == 1 ).toMap (), {'a' : 1 });
1155
+ expect ({'a' : 1 }.entries.whereValue ((v) => v == 2 ).toMap (), isEmpty);
1156
+ });
1157
+ test ('multiple' , () {
1158
+ expect (
1159
+ {'a' : 1 , 'b' : 2 }.entries.whereValue ((v) => v == 1 ).toMap (),
1160
+ {'a' : 1 },
1161
+ );
1162
+ expect (
1163
+ {'a' : 1 , 'b' : 2 }.entries.whereValue ((v) => v == 2 ).toMap (),
1164
+ {'b' : 2 },
1165
+ );
1166
+ expect (
1167
+ {'a' : 1 , 'b' : 2 }.entries.whereValue ((v) => v != 3 ).toMap (),
1168
+ {'a' : 1 , 'b' : 2 },
1169
+ );
1170
+ });
1171
+ });
1172
+ group ('.keys' , () {
1173
+ test ('empty' , () {
1174
+ expect (< String , int > {}.entries.keys, isEmpty);
1175
+ });
1176
+ test ('single' , () {
1177
+ expect ({'a' : 1 }.entries.keys, ['a' ]);
1178
+ });
1179
+ test ('multiple' , () {
1180
+ expect ({'a' : 1 , 'b' : 2 }.entries.keys, ['a' , 'b' ]);
1181
+ });
1182
+ });
1183
+ group ('.values' , () {
1184
+ test ('empty' , () {
1185
+ expect (< String , int > {}.entries.values, isEmpty);
1186
+ });
1187
+ test ('single' , () {
1188
+ expect ({'a' : 1 }.entries.values, [1 ]);
1189
+ });
1190
+ test ('multiple' , () {
1191
+ expect ({'a' : 1 , 'b' : 2 }.entries.values, [1 , 2 ]);
1192
+ });
1193
+ });
1194
+ group ('.toMap' , () {
1195
+ test ('empty' , () {
1196
+ expect (< String , int > {}.entries.toMap (), < String , int > {});
1197
+ });
1198
+ test ('single' , () {
1199
+ expect ({'a' : 1 }.entries.toMap (), {'a' : 1 });
1200
+ });
1201
+ test ('multiple' , () {
1202
+ expect ({'a' : 1 , 'b' : 2 }.entries.toMap (), {'a' : 1 , 'b' : 2 });
1203
+ });
1204
+ });
1205
+ });
1125
1206
group ('of comparable' , () {
1126
1207
group ('.min' , () {
1127
1208
test ('empty' , () {
0 commit comments