@@ -1283,5 +1283,62 @@ public void Can_convert_KVPs_to_ObjectDictionary()
1283
1283
Assert . That ( new [ ] { strKvp , strKvp2 } . ConvertTo < Dictionary < string , object > > ( ) , Is . EquivalentTo ( new Dictionary < string , object > { { "A" , "1" } , { "B" , "2" } } ) ) ;
1284
1284
Assert . That ( new [ ] { intKvp , intKvp2 } . ConvertTo < Dictionary < string , object > > ( ) , Is . EquivalentTo ( new Dictionary < string , object > { { "A" , 1 } , { "B" , 2 } } ) ) ;
1285
1285
}
1286
+
1287
+ [ Test ]
1288
+ public void Can_convert_between_KVP_Objects_and_IEnumerable ( )
1289
+ {
1290
+ var kvps = new List < KeyValuePair < string , object > > {
1291
+ new KeyValuePair < string , object > ( "A" , 1 ) ,
1292
+ new KeyValuePair < string , object > ( "B" , 2 ) ,
1293
+ new KeyValuePair < string , object > ( "C" , 3 ) ,
1294
+ } ;
1295
+
1296
+ Assert . That ( kvps . ConvertTo < IEnumerable < object > > ( ) , Is . EqualTo ( kvps ) ) ;
1297
+ Assert . That ( kvps . ConvertTo < List < object > > ( ) , Is . EqualTo ( kvps ) ) ;
1298
+ Assert . That ( kvps . ConvertTo < object [ ] > ( ) , Is . EqualTo ( kvps ) ) ;
1299
+
1300
+ List < object > listObjs = kvps . Cast < object > ( ) . ToList ( ) ;
1301
+ Assert . That ( listObjs . ConvertTo < List < KeyValuePair < string , object > > > ( ) , Is . EquivalentTo ( listObjs ) ) ;
1302
+ object [ ] arrayObjs = kvps . Cast < object > ( ) . ToArray ( ) ;
1303
+ Assert . That ( arrayObjs . ConvertTo < List < KeyValuePair < string , object > > > ( ) , Is . EquivalentTo ( arrayObjs ) ) ;
1304
+ }
1305
+
1306
+ [ Test ]
1307
+ public void Can_convert_between_KVP_Strings_and_IEnumerable ( )
1308
+ {
1309
+ var kvps = new List < KeyValuePair < string , string > > {
1310
+ new KeyValuePair < string , string > ( "A" , "1" ) ,
1311
+ new KeyValuePair < string , string > ( "B" , "2" ) ,
1312
+ new KeyValuePair < string , string > ( "C" , "3" ) ,
1313
+ } ;
1314
+
1315
+ Assert . That ( kvps . ConvertTo < IEnumerable < object > > ( ) , Is . EqualTo ( kvps ) ) ;
1316
+ Assert . That ( kvps . ConvertTo < List < object > > ( ) , Is . EqualTo ( kvps ) ) ;
1317
+ Assert . That ( kvps . ConvertTo < object [ ] > ( ) , Is . EqualTo ( kvps ) ) ;
1318
+
1319
+ List < object > listObjs = kvps . Cast < object > ( ) . ToList ( ) ;
1320
+ Assert . That ( listObjs . ConvertTo < List < KeyValuePair < string , object > > > ( ) , Is . EquivalentTo ( listObjs ) ) ;
1321
+ object [ ] arrayObjs = kvps . Cast < object > ( ) . ToArray ( ) ;
1322
+ Assert . That ( arrayObjs . ConvertTo < List < KeyValuePair < string , object > > > ( ) , Is . EquivalentTo ( arrayObjs ) ) ;
1323
+ }
1324
+
1325
+ [ Test ]
1326
+ public void Can_convert_between_KVP_ints_and_IEnumerable ( )
1327
+ {
1328
+ var kvps = new List < KeyValuePair < string , int > > {
1329
+ new KeyValuePair < string , int > ( "A" , 1 ) ,
1330
+ new KeyValuePair < string , int > ( "B" , 2 ) ,
1331
+ new KeyValuePair < string , int > ( "C" , 3 ) ,
1332
+ } ;
1333
+
1334
+ Assert . That ( kvps . ConvertTo < IEnumerable < object > > ( ) , Is . EqualTo ( kvps ) ) ;
1335
+ Assert . That ( kvps . ConvertTo < List < object > > ( ) , Is . EqualTo ( kvps ) ) ;
1336
+ Assert . That ( kvps . ConvertTo < object [ ] > ( ) , Is . EqualTo ( kvps ) ) ;
1337
+
1338
+ List < object > listObjs = kvps . Cast < object > ( ) . ToList ( ) ;
1339
+ Assert . That ( listObjs . ConvertTo < List < KeyValuePair < string , object > > > ( ) , Is . EquivalentTo ( listObjs ) ) ;
1340
+ object [ ] arrayObjs = kvps . Cast < object > ( ) . ToArray ( ) ;
1341
+ Assert . That ( arrayObjs . ConvertTo < List < KeyValuePair < string , object > > > ( ) , Is . EquivalentTo ( arrayObjs ) ) ;
1342
+ }
1286
1343
}
1287
1344
}
0 commit comments