@@ -918,21 +918,45 @@ public async Task DebuggerEnumerableShowsRawView()
918
918
Assert . NotNull ( rawDetailsView ) ;
919
919
Assert . Empty ( rawDetailsView . Type ) ;
920
920
Assert . Empty ( rawDetailsView . ValueString ) ;
921
- VariableDetailsBase [ ] rawViewChildren = rawDetailsView . GetChildren ( NullLogger . Instance ) ;
922
- Assert . Equal ( 7 , rawViewChildren . Length ) ;
923
- Assert . Equal ( "Length" , rawViewChildren [ 0 ] . Name ) ;
924
- Assert . Equal ( "4" , rawViewChildren [ 0 ] . ValueString ) ;
925
- Assert . Equal ( "LongLength" , rawViewChildren [ 1 ] . Name ) ;
926
- Assert . Equal ( "4" , rawViewChildren [ 1 ] . ValueString ) ;
927
- Assert . Equal ( "Rank" , rawViewChildren [ 2 ] . Name ) ;
928
- Assert . Equal ( "1" , rawViewChildren [ 2 ] . ValueString ) ;
929
- Assert . Equal ( "SyncRoot" , rawViewChildren [ 3 ] . Name ) ;
930
- Assert . Equal ( "IsReadOnly" , rawViewChildren [ 4 ] . Name ) ;
931
- Assert . Equal ( "$false" , rawViewChildren [ 4 ] . ValueString ) ;
932
- Assert . Equal ( "IsFixedSize" , rawViewChildren [ 5 ] . Name ) ;
933
- Assert . Equal ( "$true" , rawViewChildren [ 5 ] . ValueString ) ;
934
- Assert . Equal ( "IsSynchronized" , rawViewChildren [ 6 ] . Name ) ;
935
- Assert . Equal ( "$false" , rawViewChildren [ 6 ] . ValueString ) ;
921
+ Assert . Collection ( rawDetailsView . GetChildren ( NullLogger . Instance ) ,
922
+ ( i ) =>
923
+ {
924
+ Assert . Equal ( "Length" , i . Name ) ;
925
+ Assert . Equal ( "4" , i . ValueString ) ;
926
+ } ,
927
+ ( i ) =>
928
+ {
929
+ Assert . Equal ( "NativeLength" , i . Name ) ;
930
+ Assert . Equal ( "4" , i . ValueString ) ;
931
+ } ,
932
+ ( i ) =>
933
+ {
934
+ Assert . Equal ( "LongLength" , i . Name ) ;
935
+ Assert . Equal ( "4" , i . ValueString ) ;
936
+ } ,
937
+ ( i ) =>
938
+ {
939
+ Assert . Equal ( "Rank" , i . Name ) ;
940
+ Assert . Equal ( "1" , i . ValueString ) ;
941
+ } ,
942
+ ( i ) =>
943
+ {
944
+ Assert . Equal ( "SyncRoot" , i . Name ) ;
945
+ Assert . True ( i . IsExpandable ) ;
946
+ } ,
947
+ ( i ) =>
948
+ {
949
+ Assert . Equal ( "IsReadOnly" , i . Name ) ;
950
+ Assert . Equal ( "$false" , i . ValueString ) ;
951
+ } , ( i ) =>
952
+ {
953
+ Assert . Equal ( "IsFixedSize" , i . Name ) ;
954
+ Assert . Equal ( "$true" , i . ValueString ) ;
955
+ } , ( i ) =>
956
+ {
957
+ Assert . Equal ( "IsSynchronized" , i . Name ) ;
958
+ Assert . Equal ( "$false" , i . ValueString ) ;
959
+ } ) ;
936
960
}
937
961
938
962
[ Fact ]
@@ -955,20 +979,38 @@ public async Task DebuggerDictionaryShowsRawView()
955
979
Assert . NotNull ( rawDetailsView ) ;
956
980
Assert . Empty ( rawDetailsView . Type ) ;
957
981
Assert . Empty ( rawDetailsView . ValueString ) ;
958
- VariableDetailsBase [ ] rawViewChildren = rawDetailsView . GetChildren ( NullLogger . Instance ) ;
959
- Assert . Equal ( 7 , rawViewChildren . Length ) ;
960
- Assert . Equal ( "IsReadOnly" , rawViewChildren [ 0 ] . Name ) ;
961
- Assert . Equal ( "$false" , rawViewChildren [ 0 ] . ValueString ) ;
962
- Assert . Equal ( "IsFixedSize" , rawViewChildren [ 1 ] . Name ) ;
963
- Assert . Equal ( "$false" , rawViewChildren [ 1 ] . ValueString ) ;
964
- Assert . Equal ( "IsSynchronized" , rawViewChildren [ 2 ] . Name ) ;
965
- Assert . Equal ( "$false" , rawViewChildren [ 2 ] . ValueString ) ;
966
- Assert . Equal ( "Keys" , rawViewChildren [ 3 ] . Name ) ;
967
- Assert . Equal ( "Values" , rawViewChildren [ 4 ] . Name ) ;
968
- Assert . Equal ( "[ValueCollection: 4]" , rawViewChildren [ 4 ] . ValueString ) ;
969
- Assert . Equal ( "SyncRoot" , rawViewChildren [ 5 ] . Name ) ;
970
- Assert . Equal ( "Count" , rawViewChildren [ 6 ] . Name ) ;
971
- Assert . Equal ( "4" , rawViewChildren [ 6 ] . ValueString ) ;
982
+ Assert . Collection ( rawDetailsView . GetChildren ( NullLogger . Instance ) ,
983
+ ( i ) => Assert . Equal ( "hcp" , i . Name ) ,
984
+ ( i ) => Assert . Equal ( "comparer" , i . Name ) ,
985
+ ( i ) => Assert . Equal ( "EqualityComparer" , i . Name ) ,
986
+ ( i ) => {
987
+ Assert . Equal ( "IsReadOnly" , i . Name ) ;
988
+ Assert . Equal ( "$false" , i . ValueString ) ;
989
+ } ,
990
+ ( i ) => {
991
+ Assert . Equal ( "IsFixedSize" , i . Name ) ;
992
+ Assert . Equal ( "$false" , i . ValueString ) ;
993
+ } ,
994
+ ( i ) => {
995
+ Assert . Equal ( "IsSynchronized" , i . Name ) ;
996
+ Assert . Equal ( "$false" , i . ValueString ) ;
997
+ } ,
998
+ ( i ) => {
999
+ Assert . Equal ( "Keys" , i . Name ) ;
1000
+ Assert . Equal ( "[KeyCollection: 4]" , i . ValueString ) ;
1001
+ } ,
1002
+ ( i ) => {
1003
+ Assert . Equal ( "Values" , i . Name ) ;
1004
+ Assert . Equal ( "[ValueCollection: 4]" , i . ValueString ) ;
1005
+ } ,
1006
+ ( i ) => {
1007
+ Assert . Equal ( "SyncRoot" , i . Name ) ;
1008
+ Assert . Equal ( "[Hashtable: 4]" , i . ValueString ) ;
1009
+ } ,
1010
+ ( i ) => {
1011
+ Assert . Equal ( "Count" , i . Name ) ;
1012
+ Assert . Equal ( "4" , i . ValueString ) ;
1013
+ } ) ;
972
1014
}
973
1015
974
1016
[ Fact ]
@@ -995,7 +1037,7 @@ public async Task DebuggerDerivedDictionaryPropertyInRawView()
995
1037
Assert . Empty ( rawDetailsView . Type ) ;
996
1038
Assert . Empty ( rawDetailsView . ValueString ) ;
997
1039
VariableDetailsBase [ ] rawViewChildren = rawDetailsView . GetChildren ( NullLogger . Instance ) ;
998
- Assert . Equal ( 4 , rawViewChildren . Length ) ;
1040
+ Assert . Equal ( 15 , rawViewChildren . Length ) ;
999
1041
Assert . NotNull ( Array . Find ( rawViewChildren , v => v . Name == "Comparer" ) ) ;
1000
1042
}
1001
1043
0 commit comments