@@ -35,45 +35,42 @@ public void MinValue()
3535 }
3636
3737 [ TestMethod ]
38- public void Equals ( )
38+ [ DataRow ( ( ulong ) 789 , ( ulong ) 789 , true ) ]
39+ [ DataRow ( ( ulong ) 789 , ( ulong ) 0 , false ) ]
40+ [ DataRow ( ( ulong ) 0 , ( ulong ) 0 , true ) ]
41+ public void Equals_UInt64ToUInt64 ( ulong i1 , ulong obj , bool expected )
3942 {
40- UInt64TestData [ ] testData = new UInt64TestData [ ]
41- {
42- new UInt64TestData ( ( ulong ) 789 , ( ulong ) 789 , true ) ,
43- new UInt64TestData ( ( ulong ) 789 , ( ulong ) 0 , false ) ,
44- new UInt64TestData ( ( ulong ) 0 , ( ulong ) 0 , true ) ,
45- new UInt64TestData ( ( ulong ) 789 , null , false ) ,
46- new UInt64TestData ( ( ulong ) 789 , "789" , false ) ,
47- new UInt64TestData ( ( ulong ) 789 , 789 , false ) ,
48- } ;
49-
50- foreach ( var test in testData )
51- {
52- OutputHelper . WriteLine ( $ "Testing combination { test . I1 } and { test . Obj } ") ;
53-
54- if ( test . Obj is ulong i2 )
55- {
56- Assert . AreEqual ( test . Expected , test . I1 . Equals ( i2 ) ) ;
57- Assert . AreEqual ( test . Expected , test . I1 . GetHashCode ( ) . Equals ( i2 . GetHashCode ( ) ) ) ;
58- Assert . AreEqual ( ( ulong ) test . I1 , test . I1 . GetHashCode ( ) ) ;
59- }
43+ OutputHelper . WriteLine ( $ "Testing combination { i1 } and { obj } ") ;
44+ Assert . AreEqual ( expected , i1 . Equals ( obj ) , $ "Equality test between { i1 } and { obj } failed") ;
45+ Assert . AreEqual ( expected , i1 . GetHashCode ( ) . Equals ( obj . GetHashCode ( ) ) ) ;
46+ Assert . AreEqual ( i1 , i1 . GetHashCode ( ) ) ;
47+ }
6048
61- Assert . AreEqual ( test . Expected , test . I1 . Equals ( test . Obj ) , $ "Equality test between { test . I1 } and { test . Obj } failed") ;
62- }
49+ [ TestMethod ]
50+ public void Equals_UInt64ToNull ( )
51+ {
52+ ulong i1 = 789 ;
53+ object obj = null ;
54+ OutputHelper . WriteLine ( $ "Testing combination { i1 } and { obj } ") ;
55+ Assert . AreEqual ( false , i1 . Equals ( obj ) , $ "Equality test between { i1 } and { obj } failed") ;
6356 }
6457
65- private sealed class UInt64TestData
58+ [ TestMethod ]
59+ public void Equals_UInt64ToString ( )
6660 {
67- public object I1 { get ; }
68- public object Obj { get ; }
69- public bool Expected { get ; }
61+ ulong i1 = 789 ;
62+ object obj = "789" ;
63+ OutputHelper . WriteLine ( $ "Testing combination { i1 } and { obj } ") ;
64+ Assert . AreEqual ( false , i1 . Equals ( obj ) , $ "Equality test between { i1 } and { obj } failed") ;
65+ }
7066
71- public UInt64TestData ( object i1 , object obj , bool expected )
72- {
73- I1 = i1 ;
74- Obj = obj ;
75- Expected = expected ;
76- }
67+ [ TestMethod ]
68+ public void Equals_UInt64ToInt ( )
69+ {
70+ ulong i1 = 789 ;
71+ object obj = 789 ;
72+ OutputHelper . WriteLine ( $ "Testing combination { i1 } and { obj } ") ;
73+ Assert . AreEqual ( false , i1 . Equals ( obj ) , $ "Equality test between { i1 } and { obj } failed") ;
7774 }
7875 }
7976}
0 commit comments