1- using System ;
1+ using System . Data . Common ;
2+ using NHibernate . Engine ;
23using NHibernate . Type ;
4+ using NSubstitute ;
35using NUnit . Framework ;
46
57namespace NHibernate . Test . TypesTest
@@ -10,10 +12,7 @@ namespace NHibernate.Test.TypesTest
1012 [ TestFixture ]
1113 public class BooleanTypeFixture : TypeFixtureBase
1214 {
13- protected override string TypeName
14- {
15- get { return "Boolean" ; }
16- }
15+ protected override string TypeName => "Boolean" ;
1716
1817 /// <summary>
1918 /// Verify Equals will correctly determine when the property
@@ -22,7 +21,7 @@ protected override string TypeName
2221 [ Test ]
2322 public void Equals ( )
2423 {
25- BooleanType type = ( BooleanType ) NHibernateUtil . Boolean ;
24+ BooleanType type = NHibernateUtil . Boolean ;
2625
2726 Assert . IsTrue ( type . IsEqual ( true , true ) ) ;
2827 Assert . IsTrue ( type . IsEqual ( false , false ) ) ;
@@ -50,5 +49,65 @@ public void ReadWrite()
5049 s . Flush ( ) ;
5150 s . Close ( ) ;
5251 }
52+
53+ [ Theory ]
54+ public void GetByIndex ( bool expected )
55+ {
56+ const int index0 = 0 ;
57+ const int index1 = 1 ;
58+ BooleanType type = NHibernateUtil . Boolean ;
59+ var session = Substitute . For < ISessionImplementor > ( ) ;
60+ var reader = Substitute . For < DbDataReader > ( ) ;
61+ reader [ index0 ] . Returns ( expected ) ;
62+ reader [ index1 ] . Returns ( expected ) ;
63+
64+ var result0 = type . Get ( reader , index0 , session ) ;
65+ var result1 = type . Get ( reader , index1 , session ) ;
66+
67+ Assert . AreEqual ( expected , ( bool ) result0 ) ;
68+ Assert . AreSame ( result0 , result1 ) ;
69+ }
70+
71+ [ Theory ]
72+ public void GetByName ( bool expected )
73+ {
74+ const string name0 = "name0" ;
75+ const string name1 = "name1" ;
76+ BooleanType type = NHibernateUtil . Boolean ;
77+ var session = Substitute . For < ISessionImplementor > ( ) ;
78+ var reader = Substitute . For < DbDataReader > ( ) ;
79+ reader [ name0 ] . Returns ( expected ) ;
80+ reader [ name1 ] . Returns ( expected ) ;
81+
82+ var result0 = type . Get ( reader , name0 , session ) ;
83+ var result1 = type . Get ( reader , name1 , session ) ;
84+
85+ Assert . AreEqual ( expected , ( bool ) result0 ) ;
86+ Assert . AreSame ( result0 , result1 ) ;
87+ }
88+
89+ [ Test ]
90+ public void DefaultValue ( )
91+ {
92+ BooleanType type = NHibernateUtil . Boolean ;
93+
94+ var result0 = type . DefaultValue ;
95+ var result1 = type . DefaultValue ;
96+
97+ Assert . IsFalse ( ( bool ) result0 ) ;
98+ Assert . AreSame ( result0 , result1 ) ;
99+ }
100+
101+ [ Theory ]
102+ public void StringToObject ( bool expected )
103+ {
104+ BooleanType type = NHibernateUtil . Boolean ;
105+
106+ var result0 = type . StringToObject ( expected . ToString ( ) ) ;
107+ var result1 = type . StringToObject ( expected . ToString ( ) ) ;
108+
109+ Assert . AreEqual ( expected , result0 ) ;
110+ Assert . AreSame ( result0 , result1 ) ;
111+ }
53112 }
54- }
113+ }
0 commit comments