1 // SqlDataTimeTest.cs - NUnit Test Cases for [explain here]
4 // Ville Palo (vi64pa@users.sourceforge.net)
5 // Martin Willemoes Hansen
11 // Copyright (C) 2004 Novell, Inc (http://www.novell.com)
13 // Permission is hereby granted, free of charge, to any person obtaining
14 // a copy of this software and associated documentation files (the
15 // "Software"), to deal in the Software without restriction, including
16 // without limitation the rights to use, copy, modify, merge, publish,
17 // distribute, sublicense, and/or sell copies of the Software, and to
18 // permit persons to whom the Software is furnished to do so, subject to
19 // the following conditions:
21 // The above copyright notice and this permission notice shall be
22 // included in all copies or substantial portions of the Software.
24 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
25 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
26 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
27 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
28 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
29 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
30 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
33 using NUnit
.Framework
;
35 using System
.Data
.SqlTypes
;
36 using System
.Threading
;
37 using System
.Globalization
;
39 namespace MonoTests
.System
.Data
.SqlTypes
43 public class SqlBooleanTest
: Assertion
{
44 private SqlBoolean SqlTrue
;
45 private SqlBoolean SqlFalse
;
48 public void GetReady() {
50 Thread
.CurrentThread
.CurrentCulture
= new CultureInfo ("en-US");
51 SqlTrue
= new SqlBoolean(true);
52 SqlFalse
= new SqlBoolean(false);
59 SqlBoolean SqlTrue2
= new SqlBoolean(1);
60 SqlBoolean SqlFalse2
= new SqlBoolean(0);
62 Assert("Creation of SqlBoolean failed", SqlTrue
.Value
);
63 Assert("Creation of SqlBoolean failed", SqlTrue2
.Value
);
64 Assert("Creation of SqlBoolean failed", !SqlFalse
.Value
);
65 Assert("Creation of SqlBoolean failed", !SqlFalse2
.Value
);
70 // PUBLIC STATIC METHODS
77 SqlBoolean SqlTrue2
= new SqlBoolean(true);
78 SqlBoolean SqlFalse2
= new SqlBoolean(false);
84 sqlResult
= SqlBoolean
.And(SqlTrue
, SqlFalse
);
85 Assert("And method does not work correctly (true && false)", !sqlResult
.Value
);
86 sqlResult
= SqlBoolean
.And(SqlFalse
, SqlTrue
);
87 Assert("And method does not work correctly (false && true)", !sqlResult
.Value
);
90 sqlResult
= SqlBoolean
.And(SqlTrue
, SqlTrue2
);
91 Assert("And method does not work correctly (true && true)", sqlResult
.Value
);
93 sqlResult
= SqlBoolean
.And(SqlTrue
, SqlTrue
);
94 Assert("And method does not work correctly (true && true2)", sqlResult
.Value
);
97 sqlResult
= SqlBoolean
.And(SqlFalse
, SqlFalse2
);
98 Assert("And method does not work correctly (false && false)", !sqlResult
.Value
);
99 sqlResult
= SqlBoolean
.And(SqlFalse
, SqlFalse
);
100 Assert("And method does not work correctly (false && false2)", !sqlResult
.Value
);
106 public void NotEquals() {
108 SqlBoolean SqlTrue2
= new SqlBoolean(true);
109 SqlBoolean SqlFalse2
= new SqlBoolean(false);
111 SqlBoolean SqlResult
;
114 SqlResult
= SqlBoolean
.NotEquals(SqlTrue
, SqlFalse
);
115 Assert("NotEquals method does not work correctly (true != false)", SqlResult
.Value
);
116 SqlResult
= SqlBoolean
.NotEquals(SqlFalse
, SqlTrue
);
117 Assert("NotEquals method does not work correctly (false != true)", SqlResult
.Value
);
121 SqlResult
= SqlBoolean
.NotEquals(SqlTrue
, SqlTrue
);
122 Assert("NotEquals method does not work correctly (true != true)", !SqlResult
.Value
);
123 SqlResult
= SqlBoolean
.NotEquals(SqlTrue
, SqlTrue2
);
124 Assert("NotEquals method does not work correctly (true != true2)", !SqlResult
.Value
);
126 SqlResult
= SqlBoolean
.NotEquals(SqlFalse
, SqlFalse
);
127 Assert("NotEquals method does not work correctly (false != false)", !SqlResult
.Value
);
128 SqlResult
= SqlBoolean
.NotEquals(SqlTrue
, SqlTrue2
);
129 Assert("NotEquals method does not work correctly (false != false2)", !SqlResult
.Value
);
131 // If either instance of SqlBoolean is null, the Value of the SqlBoolean will be Null.
132 SqlResult
= SqlBoolean
.NotEquals(SqlBoolean
.Null
, SqlFalse
);
133 Assert("NotEquals method does not work correctly (Null != false)", SqlResult
.IsNull
);
134 SqlResult
= SqlBoolean
.NotEquals(SqlTrue
, SqlBoolean
.Null
);
135 Assert("NotEquals method does not work correctly (false != Null)", SqlResult
.IsNull
);
141 public void OnesComplement() {
143 SqlBoolean SqlFalse2
= SqlBoolean
.OnesComplement(SqlTrue
);
144 Assert("OnesComplement method does not work correctly", !SqlFalse2
.Value
);
146 SqlBoolean SqlTrue2
= SqlBoolean
.OnesComplement(SqlFalse
);
147 Assert("OnesComplement method does not work correctly", SqlTrue2
.Value
);
155 SqlBoolean SqlTrue2
= new SqlBoolean(true);
156 SqlBoolean SqlFalse2
= new SqlBoolean(false);
158 SqlBoolean SqlResult
;
161 SqlResult
= SqlBoolean
.Or(SqlTrue
, SqlFalse
);
162 Assert("Or method does not work correctly (true || false)", SqlResult
.Value
);
163 SqlResult
= SqlBoolean
.Or(SqlFalse
, SqlTrue
);
164 Assert("Or method does not work correctly (false || true)", SqlResult
.Value
);
167 SqlResult
= SqlBoolean
.Or(SqlTrue
, SqlTrue
);
168 Assert("Or method does not work correctly (true || true)", SqlResult
.Value
);
169 SqlResult
= SqlBoolean
.Or(SqlTrue
, SqlTrue2
);
170 Assert("Or method does not work correctly (true || true2)", SqlResult
.Value
);
173 SqlResult
= SqlBoolean
.Or(SqlFalse
, SqlFalse
);
174 Assert("Or method does not work correctly (false || false)", !SqlResult
.Value
);
175 SqlResult
= SqlBoolean
.Or(SqlFalse
, SqlFalse2
);
176 Assert("Or method does not work correctly (false || false2)", !SqlResult
.Value
);
183 public void Parse() {
185 String error
= "Parse method does not work correctly ";
187 Assert(error
+ "(\"True\")", SqlBoolean
.Parse("True").Value
);
188 Assert(error
+ "(\" True\")", SqlBoolean
.Parse(" True").Value
);
189 Assert(error
+ "(\"True \")", SqlBoolean
.Parse("True ").Value
);
190 Assert(error
+ "(\"tRue\")", SqlBoolean
.Parse("tRuE").Value
);
191 Assert(error
+ "(\"False\")", !SqlBoolean
.Parse("False").Value
);
192 Assert(error
+ "(\" False\")", !SqlBoolean
.Parse(" False").Value
);
193 Assert(error
+ "(\"False \")", !SqlBoolean
.Parse("False ").Value
);
194 Assert(error
+ "(\"fAlSe\")", !SqlBoolean
.Parse("fAlSe").Value
);
202 SqlBoolean SqlTrue2
= new SqlBoolean(true);
203 SqlBoolean SqlFalse2
= new SqlBoolean(false);
205 SqlBoolean SqlResult
;
208 SqlResult
= SqlBoolean
.Xor(SqlTrue
, SqlFalse
);
209 Assert("Xor method does not work correctly (true ^ false)", SqlResult
.Value
);
210 SqlResult
= SqlBoolean
.Xor(SqlFalse
, SqlTrue
);
211 Assert("Xor method does not work correctly (false ^ true)", SqlResult
.Value
);
214 SqlResult
= SqlBoolean
.Xor(SqlTrue
, SqlTrue2
);
215 Assert("Xor method does not work correctly (true ^ true)", !SqlResult
.Value
);
218 SqlResult
= SqlBoolean
.Xor(SqlFalse
, SqlFalse2
);
219 Assert("Xor method does not work correctly (false ^ false)", !SqlResult
.Value
);
225 public void StaticEquals() {
227 SqlBoolean SqlTrue2
= new SqlBoolean(true);
228 SqlBoolean SqlFalse2
= new SqlBoolean(false);
229 String error
= "Static Equals method does not work correctly ";
231 Assert(error
+ "(true == true)", SqlBoolean
.Equals(SqlTrue
, SqlTrue2
).Value
);
232 Assert(error
+ "(false == false)", SqlBoolean
.Equals(SqlFalse
, SqlFalse2
).Value
);
234 Assert(error
+ "(true == false)", !SqlBoolean
.Equals(SqlTrue
, SqlFalse
).Value
);
235 Assert(error
+ "(false == true)", !SqlBoolean
.Equals(SqlFalse
, SqlTrue
).Value
);
237 AssertEquals(error
+ "(null == false)", SqlBoolean
.Null
, SqlBoolean
.Equals(SqlBoolean
.Null
, SqlFalse
));
238 AssertEquals(error
+ "(true == null)", SqlBoolean
.Null
, SqlBoolean
.Equals(SqlTrue
, SqlBoolean
.Null
));
243 // END OF STATIC METHODS
252 public void CompareTo() {
254 String error
= "CompareTo method does not work correctly";
256 Assert(error
, (SqlTrue
.CompareTo(SqlBoolean
.Null
) > 0));
257 Assert(error
, (SqlTrue
.CompareTo(SqlFalse
) > 0));
258 Assert(error
, (SqlFalse
.CompareTo(SqlTrue
) < 0));
259 Assert(error
, (SqlFalse
.CompareTo(SqlFalse
) == 0));
265 public void Equals() {
267 SqlBoolean SqlTrue2
= new SqlBoolean(true);
268 SqlBoolean SqlFalse2
= new SqlBoolean(false);
270 String error
= "Equals method does not work correctly ";
272 Assert(error
+ "(true == true)", SqlTrue
.Equals(SqlTrue2
));
273 Assert(error
+ "(false == false)", SqlFalse
.Equals(SqlFalse2
));
275 Assert(error
+ "(true == false)", !SqlTrue
.Equals(SqlFalse
));
276 Assert(error
+ "(false == true)", !SqlFalse
.Equals(SqlTrue
));
278 Assert(error
+ "(true == false)", !SqlTrue
.Equals(null));
283 public void GetHashCodeTest() {
285 AssertEquals("GetHashCode method does not work correctly",
286 1, SqlTrue
.GetHashCode());
288 AssertEquals("GetHashCode method does not work correctly",
289 0, SqlFalse
.GetHashCode());
295 public void GetTypeTest() {
297 AssertEquals("GetType method does not work correctly",
298 SqlTrue
.GetType().ToString(), "System.Data.SqlTypes.SqlBoolean");
303 public void ToSqlByte() {
307 String error
= "ToSqlByte method does not work correctly ";
309 SqlTestByte
= SqlTrue
.ToSqlByte();
310 AssertEquals(error
, (byte)1,SqlTestByte
.Value
);
312 SqlTestByte
= SqlFalse
.ToSqlByte();
313 AssertEquals(error
, (byte)0, SqlTestByte
.Value
);
319 public void ToSqlDecimal() {
321 SqlDecimal SqlTestDecimal
;
323 String error
= "ToSqlDecimal method does not work correctly ";
325 SqlTestDecimal
= SqlTrue
.ToSqlDecimal();
327 AssertEquals(error
, (decimal)1, SqlTestDecimal
.Value
);
329 SqlTestDecimal
= SqlFalse
.ToSqlDecimal();
330 AssertEquals(error
, (decimal)0, SqlTestDecimal
.Value
);
335 public void ToSqlDouble() {
337 SqlDouble SqlTestDouble
;
339 String error
= "ToSqlDouble method does not work correctly ";
341 SqlTestDouble
= SqlTrue
.ToSqlDouble();
342 AssertEquals(error
, (double)1, SqlTestDouble
.Value
);
344 SqlTestDouble
= SqlFalse
.ToSqlDouble();
345 AssertEquals(error
, (double)0, SqlTestDouble
.Value
);
350 public void ToSqlInt16() {
352 SqlInt16 SqlTestInt16
;
354 String error
= "ToSqlInt16 method does not work correctly ";
356 SqlTestInt16
= SqlTrue
.ToSqlInt16();
357 AssertEquals(error
, (short)1, SqlTestInt16
.Value
);
359 SqlTestInt16
= SqlFalse
.ToSqlInt16();
360 AssertEquals(error
, (short)0, SqlTestInt16
.Value
);
366 public void ToSqlInt32() {
368 SqlInt32 SqlTestInt32
;
370 String error
= "ToSqlInt32 method does not work correctly ";
372 SqlTestInt32
= SqlTrue
.ToSqlInt32();
373 AssertEquals(error
, (int)1, SqlTestInt32
.Value
);
375 SqlTestInt32
= SqlFalse
.ToSqlInt32();
376 AssertEquals(error
, (int)0, SqlTestInt32
.Value
);
382 public void ToSqlInt64() {
384 SqlInt64 SqlTestInt64
;
386 String error
= "ToSqlInt64 method does not work correctly ";
388 SqlTestInt64
= SqlTrue
.ToSqlInt64();
389 AssertEquals(error
, (long)1, SqlTestInt64
.Value
);
391 SqlTestInt64
= SqlFalse
.ToSqlInt64();
392 AssertEquals(error
, (long)0, SqlTestInt64
.Value
);
398 public void ToSqlMoney() {
400 SqlMoney SqlTestMoney
;
402 String error
= "ToSqlMoney method does not work correctly ";
404 SqlTestMoney
= SqlTrue
.ToSqlMoney();
405 AssertEquals(error
, 1.0000M
, SqlTestMoney
.Value
);
407 SqlTestMoney
= SqlFalse
.ToSqlMoney();
408 AssertEquals(error
, (decimal)0, SqlTestMoney
.Value
);
414 public void ToSqlsingle() {
416 SqlSingle SqlTestSingle
;
418 String error
= "ToSqlSingle method does not work correctly ";
420 SqlTestSingle
= SqlTrue
.ToSqlSingle();
421 AssertEquals(error
, (float)1, SqlTestSingle
.Value
);
423 SqlTestSingle
= SqlFalse
.ToSqlSingle();
424 AssertEquals(error
, (float)0, SqlTestSingle
.Value
);
430 public void ToSqlString() {
432 SqlString SqlTestString
;
434 String error
= "ToSqlString method does not work correctly ";
436 SqlTestString
= SqlTrue
.ToSqlString();
437 AssertEquals(error
, "True", SqlTestString
.Value
);
439 SqlTestString
= SqlFalse
.ToSqlString();
440 AssertEquals(error
, "False", SqlTestString
.Value
);
446 public void ToStringTest() {
448 SqlString TestString
;
450 String error
= "ToString method does not work correctly ";
452 TestString
= SqlTrue
.ToString();
453 AssertEquals(error
, "True", TestString
.Value
);
455 TestString
= SqlFalse
.ToSqlString();
456 AssertEquals(error
, "False", TestString
.Value
);
460 // END OF PUBLIC METHODS
466 // BitwixeAnd operator
468 public void BitwiseAndOperator() {
470 SqlBoolean SqlTrue2
= new SqlBoolean(true);
471 SqlBoolean SqlFalse2
= new SqlBoolean(false);
473 SqlBoolean SqlResult
;
474 String error
= "BitwiseAnd operator does not work correctly ";
476 SqlResult
= SqlTrue
& SqlFalse
;
477 Assert(error
+ "(true & false)", !SqlResult
.Value
);
478 SqlResult
= SqlFalse
& SqlTrue
;
479 Assert(error
+ "(false & true)", !SqlResult
.Value
);
481 SqlResult
= SqlTrue
& SqlTrue2
;
482 Assert(error
+ "(true & true)", SqlResult
.Value
);
484 SqlResult
= SqlFalse
& SqlFalse2
;
485 Assert(error
+ "(false & false)", !SqlResult
.Value
);
490 // BitwixeOr operator
492 public void BitwiseOrOperator() {
494 SqlBoolean SqlTrue2
= new SqlBoolean(true);
495 SqlBoolean SqlFalse2
= new SqlBoolean(false);
497 SqlBoolean SqlResult
;
498 String error
= "BitwiseOr operator does not work correctly ";
500 SqlResult
= SqlTrue
| SqlFalse
;
501 Assert(error
+ "(true | false)", SqlResult
.Value
);
502 SqlResult
= SqlFalse
| SqlTrue
;
504 Assert(error
+ "(false | true)", SqlResult
.Value
);
506 SqlResult
= SqlTrue
| SqlTrue2
;
507 Assert(error
+ "(true | true)", SqlResult
.Value
);
509 SqlResult
= SqlFalse
| SqlFalse2
;
510 Assert(error
+ "(false | false)", !SqlResult
.Value
);
516 public void EqualityOperator() {
518 SqlBoolean SqlTrue2
= new SqlBoolean(true);
519 SqlBoolean SqlFalse2
= new SqlBoolean(false);
521 SqlBoolean SqlResult
;
522 String error
= "Equality operator does not work correctly ";
524 SqlResult
= SqlTrue
== SqlFalse
;
525 Assert(error
+ "(true == false)", !SqlResult
.Value
);
526 SqlResult
= SqlFalse
== SqlTrue
;
527 Assert(error
+ "(false == true)", !SqlResult
.Value
);
529 SqlResult
= SqlTrue
== SqlTrue2
;
530 Assert(error
+ "(true == true)", SqlResult
.Value
);
532 SqlResult
= SqlFalse
== SqlFalse2
;
533 Assert(error
+ "(false == false)", SqlResult
.Value
);
535 SqlResult
= SqlFalse
== SqlBoolean
.Null
;
536 Assert(error
+ "(false == Null)", SqlResult
.IsNull
);
537 SqlResult
= SqlBoolean
.Null
== SqlBoolean
.Null
;
538 Assert(error
+ "(Null == true)", SqlResult
.IsNull
);
542 // ExlusiveOr operator
544 public void ExlusiveOrOperator() {
546 SqlBoolean SqlTrue2
= new SqlBoolean(true);
547 SqlBoolean SqlFalse2
= new SqlBoolean(false);
549 SqlBoolean SqlResult
;
550 String error
= "ExclusiveOr operator does not work correctly ";
552 SqlResult
= SqlTrue ^ SqlFalse
;
553 Assert(error
+ "(true ^ false)", SqlResult
.Value
);
554 SqlResult
= SqlFalse
| SqlTrue
;
555 Assert(error
+ "(false ^ true)", SqlResult
.Value
);
557 SqlResult
= SqlTrue ^ SqlTrue2
;
558 Assert(error
+ "(true ^ true)", !SqlResult
.Value
);
560 SqlResult
= SqlFalse ^ SqlFalse2
;
561 Assert(error
+ "(false ^ false)", !SqlResult
.Value
);
567 public void FalseOperator() {
569 String error
= "false operator does not work correctly ";
571 AssertEquals(error
+ "(true)", SqlBoolean
.False
, (!SqlTrue
));
572 AssertEquals(error
+ "(false)", SqlBoolean
.True
, (!SqlFalse
));
576 // Inequality operator
578 public void InequalityOperator() {
580 SqlBoolean SqlTrue2
= new SqlBoolean(true);
581 SqlBoolean SqlFalse2
= new SqlBoolean(false);
583 String error
= "Inequality operator does not work correctly" ;
585 AssertEquals(error
+ "(true != true)", SqlBoolean
.False
, SqlTrue
!= SqlTrue
);
586 AssertEquals(error
+ "(true != true)", SqlBoolean
.False
, SqlTrue
!= SqlTrue2
);
587 AssertEquals(error
+ "(false != false)", SqlBoolean
.False
, SqlFalse
!= SqlFalse
);
588 AssertEquals(error
+ "(false != false)", SqlBoolean
.False
, SqlFalse
!= SqlFalse2
);
589 AssertEquals(error
+ "(true != false)", SqlBoolean
.True
, SqlTrue
!= SqlFalse
);
590 AssertEquals(error
+ "(false != true)", SqlBoolean
.True
, SqlFalse
!= SqlTrue
);
591 AssertEquals(error
+ "(null != true)", SqlBoolean
.Null
, SqlBoolean
.Null
!= SqlTrue
);
592 AssertEquals(error
+ "(false != null)", SqlBoolean
.Null
, SqlFalse
!= SqlBoolean
.Null
);
596 // Logical Not operator
598 public void LogicalNotOperator() {
600 String error
= "Logical Not operator does not work correctly" ;
602 AssertEquals(error
+ "(true)", SqlBoolean
.False
, !SqlTrue
);
603 AssertEquals(error
+ "(false)", SqlBoolean
.True
, !SqlFalse
);
607 // OnesComplement operator
609 public void OnesComplementOperator() {
611 String error
= "Ones complement operator does not work correctly" ;
613 SqlBoolean SqlResult
;
615 SqlResult
= ~SqlTrue
;
616 Assert(error
+ "(true)", !SqlResult
.Value
);
617 SqlResult
= ~SqlFalse
;
618 Assert(error
+ "(false)", SqlResult
.Value
);
625 public void TrueOperator() {
627 String error
= "true operator does not work correctly ";
629 AssertEquals(error
+ "(true)", SqlBoolean
.True
, (SqlTrue
));
630 AssertEquals(error
+ "(false)", SqlBoolean
.False
, (SqlFalse
));
634 // SqlBoolean to Boolean
636 public void SqlBooleanToBoolean() {
638 String error
= "SqlBooleanToBoolean operator does not work correctly ";
640 Boolean TestBoolean
= (Boolean
)SqlTrue
;
641 Assert(error
+ "(true)", TestBoolean
);
642 TestBoolean
= (Boolean
)SqlFalse
;
643 Assert(error
+ "(false)", !TestBoolean
);
647 // SqlByte to SqlBoolean
649 public void SqlByteToSqlBoolean() {
652 SqlBoolean SqlTestBoolean
;
653 String error
= "SqlByteToSqlBoolean operator does not work correctly ";
655 SqlTestByte
= new SqlByte(1);
656 SqlTestBoolean
= (SqlBoolean
)SqlTestByte
;
657 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
659 SqlTestByte
= new SqlByte(2);
660 SqlTestBoolean
= (SqlBoolean
)SqlTestByte
;
661 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
663 SqlTestByte
= new SqlByte(0);
664 SqlTestBoolean
= (SqlBoolean
)SqlTestByte
;
665 Assert(error
+ "(false)", !SqlTestBoolean
.Value
);
669 // SqlDecimal to SqlBoolean
671 public void SqlDecimalToSqlBoolean() {
674 SqlBoolean SqlTestBoolean
;
675 String error
= "SqlDecimalToSqlBoolean operator does not work correctly ";
677 SqlTest
= new SqlDecimal(1);
678 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
679 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
681 SqlTest
= new SqlDecimal(19);
682 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
683 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
685 SqlTest
= new SqlDecimal(0);
686 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
687 Assert(error
+ "(false)", !SqlTestBoolean
.Value
);
691 // SqlDouble to SqlBoolean
693 public void SqlDoubleToSqlBoolean() {
696 SqlBoolean SqlTestBoolean
;
697 String error
= "SqlDoubleToSqlBoolean operator does not work correctly ";
699 SqlTest
= new SqlDouble(1);
700 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
701 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
703 SqlTest
= new SqlDouble(-19.8);
704 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
705 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
707 SqlTest
= new SqlDouble(0);
708 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
709 Assert(error
+ "(false)", !SqlTestBoolean
.Value
);
713 // SqlIn16 to SqlBoolean
715 public void SqlInt16ToSqlBoolean() {
718 SqlBoolean SqlTestBoolean
;
719 String error
= "SqlInt16ToSqlBoolean operator does not work correctly ";
721 SqlTest
= new SqlInt16(1);
722 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
723 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
725 SqlTest
= new SqlInt16(-143);
726 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
727 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
729 SqlTest
= new SqlInt16(0);
730 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
731 Assert(error
+ "(false)", !SqlTestBoolean
.Value
);
735 // SqlInt32 to SqlBoolean
737 public void SqlInt32ToSqlBoolean() {
740 SqlBoolean SqlTestBoolean
;
741 String error
= "SqlInt32ToSqlBoolean operator does not work correctly ";
743 SqlTest
= new SqlInt32(1);
744 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
745 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
747 SqlTest
= new SqlInt32(1430);
748 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
749 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
751 SqlTest
= new SqlInt32(0);
752 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
753 Assert(error
+ "(false)", !SqlTestBoolean
.Value
);
756 // SqlInt64 to SqlBoolean
758 public void SqlInt64ToSqlBoolean() {
761 SqlBoolean SqlTestBoolean
;
762 String error
= "SqlInt64ToSqlBoolean operator does not work correctly ";
764 SqlTest
= new SqlInt64(1);
765 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
766 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
768 SqlTest
= new SqlInt64(-14305);
769 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
770 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
772 SqlTest
= new SqlInt64(0);
773 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
774 Assert(error
+ "(false)", !SqlTestBoolean
.Value
);
778 // SqlMoney to SqlBoolean
780 public void SqlMoneyToSqlBoolean() {
783 SqlBoolean SqlTestBoolean
;
784 String error
= "SqlMoneyToSqlBoolean operator does not work correctly ";
786 SqlTest
= new SqlMoney(1);
787 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
788 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
790 SqlTest
= new SqlMoney(1305);
791 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
792 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
794 SqlTest
= new SqlMoney(0);
795 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
796 Assert(error
+ "(false)", !SqlTestBoolean
.Value
);
800 // SqlSingle to SqlBoolean
802 public void SqlSingleToSqlBoolean() {
805 SqlBoolean SqlTestBoolean
;
806 String error
= "SqlSingleToSqlBoolean operator does not work correctly ";
808 SqlTest
= new SqlSingle(1);
809 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
810 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
812 SqlTest
= new SqlSingle(1305);
813 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
814 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
816 SqlTest
= new SqlSingle(-305.3);
817 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
818 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
820 SqlTest
= new SqlSingle(0);
821 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
822 Assert(error
+ "(false)", !SqlTestBoolean
.Value
);
826 // SqlString to SqlBoolean
828 public void SqlStringToSqlBoolean() {
831 SqlBoolean SqlTestBoolean
;
832 String error
= "SqlSingleToSqlBoolean operator does not work correctly ";
834 SqlTest
= new SqlString("true");
835 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
836 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
838 SqlTest
= new SqlString("TRUE");
839 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
840 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
842 SqlTest
= new SqlString("True");
843 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
844 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
846 SqlTest
= new SqlString("false");
847 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
848 Assert(error
+ "(false)", !SqlTestBoolean
.Value
);
852 // Boolean to SqlBoolean
854 public void BooleanToSqlBoolean() {
856 SqlBoolean SqlTestBoolean
;
859 String error
= "BooleanToSqlBoolean operator does not work correctly ";
861 Boolean SqlTest
= true;
862 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
863 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
864 SqlTestBoolean
= (SqlBoolean
)btrue
;
865 Assert(error
+ "(true)", SqlTestBoolean
.Value
);
869 SqlTestBoolean
= (SqlBoolean
)SqlTest
;
870 Assert(error
+ "(false)", !SqlTestBoolean
.Value
);
871 SqlTestBoolean
= (SqlBoolean
)bfalse
;
872 Assert(error
+ "(false)", !SqlTestBoolean
.Value
);
882 // ByteValue property
884 public void ByteValueProperty() {
886 String error
= "ByteValue property does not work correctly ";
888 AssertEquals(error
+ "(true)", (byte)1, SqlTrue
.ByteValue
);
889 AssertEquals(error
+ "(false)", (byte)0, SqlFalse
.ByteValue
);
895 public void IsFalseProperty() {
897 String error
= "IsFalse property does not work correctly ";
899 Assert(error
+ "(true)", !SqlTrue
.IsFalse
);
900 Assert(error
+ "(false)", SqlFalse
.IsFalse
);
906 public void IsNullProperty() {
908 String error
= "IsNull property does not work correctly ";
910 Assert(error
+ "(true)", !SqlTrue
.IsNull
);
911 Assert(error
+ "(false)", !SqlFalse
.IsNull
);
912 Assert(error
+ "(Null)", SqlBoolean
.Null
.IsNull
);
918 public void IsTrueProperty() {
920 String error
= "IsTrue property does not work correctly ";
922 Assert(error
+ "(true)", SqlTrue
.IsTrue
);
923 Assert(error
+ "(false)", !SqlFalse
.IsTrue
);
929 public void ValueProperty() {
931 String error
= "Value property does not work correctly ";
933 Assert(error
+ "(true)", SqlTrue
.Value
);
934 Assert(error
+ "(false)", !SqlFalse
.Value
);
945 public void FalseField() {
947 Assert("False field does not work correctly",
948 !SqlBoolean
.False
.Value
);
953 public void NullField() {
955 Assert("Null field does not work correctly",
956 SqlBoolean
.Null
.IsNull
);
961 public void OneField() {
963 AssertEquals("One field does not work correctly",
964 (byte)1, SqlBoolean
.One
.ByteValue
);
968 public void TrueField() {
970 Assert("True field does not work correctly",
971 SqlBoolean
.True
.Value
);
976 public void ZeroField() {
978 AssertEquals("Zero field does not work correctly",
979 (byte)0, SqlBoolean
.Zero
.ByteValue
);