22using NetFabric . Assertive ;
33using Xunit ;
44
5- namespace NetFabric . Hyperlinq . UnitTests . Conversion . AsValueEnumerable
5+ namespace NetFabric . Hyperlinq . UnitTests . Conversion . AsValueEnumerable . ValueReadOnlyCollection
66{
7- public partial class ValueReadOnlyCollectionTests
7+ public partial class Tests
88 {
99 [ Theory ]
1010 [ MemberData ( nameof ( TestData . Empty ) , MemberType = typeof ( TestData ) ) ]
1111 [ MemberData ( nameof ( TestData . Single ) , MemberType = typeof ( TestData ) ) ]
1212 [ MemberData ( nameof ( TestData . Multiple ) , MemberType = typeof ( TestData ) ) ]
13- public void AsValueReadOnlyCollection1_With_ValidData_Must_Succeed ( int [ ] source )
13+ public void AsValueReadOnlyCollection2_With_ValidData_Must_Succeed ( int [ ] source )
1414 {
1515 // Arrange
1616 var wrapped = Wrap
1717 . AsValueReadOnlyCollection ( source ) ;
1818
1919 // Act
20+ // ReSharper disable once HeapView.BoxingAllocation
2021 var result = wrapped
21- . AsValueEnumerable ( ) ;
22+ . AsValueEnumerable < Wrap . Enumerator < int > , int > ( ) ;
2223
2324 // Assert
2425 _ = result . Must ( )
@@ -30,29 +31,7 @@ public void AsValueReadOnlyCollection1_With_ValidData_Must_Succeed(int[] source)
3031 [ MemberData ( nameof ( TestData . Empty ) , MemberType = typeof ( TestData ) ) ]
3132 [ MemberData ( nameof ( TestData . Single ) , MemberType = typeof ( TestData ) ) ]
3233 [ MemberData ( nameof ( TestData . Multiple ) , MemberType = typeof ( TestData ) ) ]
33- public void AsValueReadOnlyCollection1_Count_With_ValidData_Must_Succeed ( int [ ] source )
34- {
35- // Arrange
36- var wrapped = Wrap
37- . AsValueReadOnlyCollection ( source ) ;
38- var expected = source
39- . Count ( ) ;
40-
41- // Act
42- var result = wrapped
43- . AsValueEnumerable ( )
44- . Count ( ) ;
45-
46- // Assert
47- _ = result . Must ( )
48- . BeEqualTo ( expected ) ;
49- }
50-
51- [ Theory ]
52- [ MemberData ( nameof ( TestData . Empty ) , MemberType = typeof ( TestData ) ) ]
53- [ MemberData ( nameof ( TestData . Single ) , MemberType = typeof ( TestData ) ) ]
54- [ MemberData ( nameof ( TestData . Multiple ) , MemberType = typeof ( TestData ) ) ]
55- public void AsValueReadOnlyCollection1_Sum_With_ValidData_Must_Succeed ( int [ ] source )
34+ public void AsValueReadOnlyCollection2_Sum_With_ValidData_Must_Succeed ( int [ ] source )
5635 {
5736 // Arrange
5837 var wrapped = Wrap
@@ -61,13 +40,26 @@ public void AsValueReadOnlyCollection1_Sum_With_ValidData_Must_Succeed(int[] sou
6140 . Sum ( ) ;
6241
6342 // Act
43+ // ReSharper disable once HeapView.BoxingAllocation
6444 var result = wrapped
65- . AsValueEnumerable ( )
45+ . AsValueEnumerable < Wrap . Enumerator < int > , int > ( )
6646 . Sum ( ) ;
6747
6848 // Assert
6949 _ = result . Must ( )
7050 . BeEqualTo ( expected ) ;
7151 }
7252 }
53+
54+ public class ValueReadOnlyCollectionTests2
55+ : ValueEnumerableTestsBase <
56+ ValueReadOnlyCollectionExtensions . ValueEnumerable < Wrap . Enumerator < int > , int > ,
57+ ValueReadOnlyCollectionExtensions . SkipTakeEnumerable < IValueReadOnlyCollection < int , Wrap . Enumerator < int > > , Wrap . Enumerator < int > , int > ,
58+ ValueReadOnlyCollectionExtensions . SkipTakeEnumerable < IValueReadOnlyCollection < int , Wrap . Enumerator < int > > , Wrap . Enumerator < int > , int > >
59+ {
60+ public ValueReadOnlyCollectionTests2 ( )
61+ // ReSharper disable once HeapView.BoxingAllocation
62+ : base ( array => Wrap . AsValueReadOnlyCollection ( array ) . AsValueEnumerable < Wrap . Enumerator < int > , int > ( ) )
63+ { }
64+ }
7365}
0 commit comments