@@ -159,6 +159,102 @@ public void ToString_WithFormat_SameAsLong()
159159 str1 . Should ( ) . Be ( str2 ) ;
160160 }
161161
162+ [ Fact ]
163+ public void CanCastFromInt ( )
164+ {
165+ int number = 12345 ;
166+ var bnumber = ( BNumber ) number ;
167+ bnumber . Should ( ) . Be ( 12345 ) ;
168+ }
169+
170+ [ Fact ]
171+ public void CanCastFromLong ( )
172+ {
173+ long number = 12345 ;
174+ var bnumber = ( BNumber ) number ;
175+ bnumber . Should ( ) . Be ( 12345 ) ;
176+ }
177+
178+ [ Fact ]
179+ public void CanCastFromNullableInt_WhenNull ( )
180+ {
181+ int ? number = null ;
182+ var bnumber = ( BNumber ) number ;
183+ bnumber . Should ( ) . BeNull ( ) ;
184+ }
185+
186+ [ Fact ]
187+ public void CanCastFromNullableLong_WhenNull ( )
188+ {
189+ long ? number = null ;
190+ var bnumber = ( BNumber ) number ;
191+ bnumber . Should ( ) . BeNull ( ) ;
192+ }
193+
194+ [ Fact ]
195+ public void CanCastFromNullableInt_WhenNotNull ( )
196+ {
197+ int ? number = 12345 ;
198+ var bnumber = ( BNumber ) number ;
199+ bnumber . Should ( ) . Be ( 12345 ) ;
200+ }
201+
202+ [ Fact ]
203+ public void CanCastFromNullableLong_WhenNotNull ( )
204+ {
205+ long ? number = 12345 ;
206+ var bnumber = ( BNumber ) number ;
207+ bnumber . Should ( ) . Be ( 12345 ) ;
208+ }
209+
210+ [ Fact ]
211+ public void CanCastToInt ( )
212+ {
213+ BNumber bnumber = new BNumber ( 12345 ) ;
214+ int number = ( int ) bnumber ;
215+ number . Should ( ) . Be ( 12345 ) ;
216+ }
217+
218+ [ Fact ]
219+ public void CanCastToLong ( )
220+ {
221+ BNumber bnumber = new BNumber ( 12345 ) ;
222+ long number = ( long ) bnumber ;
223+ number . Should ( ) . Be ( 12345 ) ;
224+ }
225+
226+ [ Fact ]
227+ public void CanCastToNullableInt_WhenNull ( )
228+ {
229+ BNumber bnumber = null ;
230+ var number = ( int ? ) bnumber ;
231+ number . Should ( ) . BeNull ( ) ;
232+ }
233+
234+ [ Fact ]
235+ public void CanCastToNullableLong_WhenNull ( )
236+ {
237+ BNumber bnumber = null ;
238+ var number = ( long ? ) bnumber ;
239+ number . Should ( ) . BeNull ( ) ;
240+ }
241+
242+ [ Fact ]
243+ public void CanCastToNullableInt_WhenNotNull ( )
244+ {
245+ BNumber bnumber = 12345 ;
246+ var number = ( int ? ) bnumber ;
247+ number . Should ( ) . Be ( 12345 ) ;
248+ }
249+
250+ [ Fact ]
251+ public void CanCastToNullableLong_WhenNotNull ( )
252+ {
253+ BNumber bnumber = 12345 ;
254+ var number = ( long ? ) bnumber ;
255+ number . Should ( ) . Be ( 12345 ) ;
256+ }
257+
162258 [ Fact ]
163259 public void CanCastFromDateTime ( )
164260 {
0 commit comments